Python读入数据函数,python读取

python读取财经数据

提取日期数据基本语法

发展壮大离不开广大客户长期以来的信赖与支持,我们将始终秉承“诚信为本、服务至上”的服务理念,坚持“二合一”的优良服务模式,真诚服务每家企业,认真做好每个细节,不断完善自我,成就企业,实现共赢。行业涉及成都木包装箱等,在成都网站建设营销型网站、WAP手机网站、VI设计、软件开发等项目上具有丰富的设计经验。

from WindPy import w

w.start()

当出现.ErrorCode==-103说明没连接上,要start一下

w.wsd(security, fields, startDate = None, endDate= None , options = None)

opion 可选(period, 日期类型, 货币类型,前后复权)

提取财务数据基本语法

w.wss(security, fields, options = None)

提取板块日序列基本语法

w.wses(sectorCode, fields, startDate = None, endDate = None, options = None)

提取板块日截面数据基本语法

w.wsee(sectorCode, fields, options=None)

提取宏观数据基本语法

w.edb(codes, startDate =None, endDate =None, options=None)

1.日期序列基本语法

ts.get_hist_data(stock,start,end)

注意:1.stock不能是集合,只能单个股票 2.需要带上.sz或.sh 3.没有field,只能取出数据后再切除.

2.pro用法

pro.daily(code, start, end, fields)

tushare引用语句

弊端也很明显,一方面不能stock集合输入,一次只能调取一个股票对应数据,另一方面tushare虽是免费试用,但有权限限制。

基本语法

wb.get_data_yahoo(code, start, end)

wb.DataReader(code, 'yahoo', start, end)

没法添加fields, 虽能集合适用,但出来的索引挺奇怪的

推荐使用定义函数或用for循环批量获取数据

总体感觉wind api最舒服,但需要账号,mac也不能直接调用wind api。还是推荐tushare的pro用法。

小白学习中,请指教=v=

Python气象数据处理与绘图(1):数据读取

python很多库支持了对nc格式文件的读取,比如NetCDF4,PyNio(PyNio和PyNgl可以看做是NCL的Python版本)以及Xarray等等。

我最初使用PyNio,但是由于NCL到Python的移植并不完全,导致目前远不如直接使用NCL方便,而在接触Xarray库后,发现其功能强大远超NCL(也可能是我NCL太菜的原因)。

安装同其它库一致:

我这里以一套中国逐日最高温度格点资料(CN05.1)为例,其水平精度为0.5°X0.5°。

可以看到,文件的坐标有时间, 经度,纬度,变量有日最高温

我们将最高温数据取出

这与Linux系统中的ncl_filedump指令看到的信息是类似的

Xarray在读取坐标信息时,自动将时间坐标读取为了datetime64 格式,这对我们挑选目的时间十分方便。Xarray通常与pandas配合使用。

比如我们想选取1979.06.01-1979.06.20时期数据,我们只需

再比如我们想选取夏季数据时,只需

更多的时间操作同python的datetime函数类似。

当我们想选取特定经纬度范围(高度)的数据时,.loc[]函数同样可以解决。

在这里,我选取了40°N-55°N,115°E-135°E范围的数据

甚至,我们还可以套娃,同时叠加时间和范围的选取

这足够满足常用到的数据索引要求。

对于这类简单排列的.txt文件,可以通过np.load读取,用pandas的.read_csv更为方便

读取txt的同时,对每列赋予了一个列名,通过data.a可以直接按列名调用相应数据。

对于较复杂的.txt文件,仍可通过该函数读取

skiprows=5跳过了前5行的文件头,sep='\s+'定义了数据间隔为空格,这里用的是正则表达。

pd.read_csv函数有很多的参数,可以处理各种复杂情况下的文本文件读取。

grib文件可通过pygrib库读取

import pygrib

f = pygrib.open('xxx.grb')

Python Pandas——Read_csv详解

可以指定整个DataFrame或各个列的数据类型:

pandas提供了多种方法来确保列仅包含一个dtype。例如,可以使用read_csv()的converters参数:

或者,可以在读取数据后使用to_numeric()函数强进行类型转换。

可以通过指定dtype ='category'或dtype = CategoricalDtype(类别,有序)直接解析类别列。

可以使用dict指定将某列为Category类型:

指定dtype ='category'将导致无序分类,其类别是数据中观察到的唯一值。

要更好地控制类别和顺序,可以创建CategoricalDtype,然后将其传递给该列的dtype。

使用dtype = CategoricalDtype时,dtype.categories之外的“意外”值将被视为缺失值。

文件可能包含标题行,也可能没有标题行。 pandas假定第一行应用作列名:

通过指定name与header,可以重命名列以及是否丢弃标题行:

如果标题不在第一行中,则将行号传递给标题,将跳过header前面的行:

如果文件或标题包含重复的名称,默认情况下,pandas会将它们区分开,以防止覆盖数据.

usecols参数允许您使用列名,位置号或可调用的方法选择文件中列的任何子集.

如果指定了comment参数,则将忽略注释行。 默认情况下,空行也将被忽略。

如果skip_blank_lines = False,则read_csv将不会忽略空行:

警告:被忽略的行的存在可能会导致涉及行号的歧义; 参数标题使用行号(忽略注释/空行),而行首使用行号(包括注释/空行).

如果同时指定了skiprows和header,则header将相对于skiprows的末尾。 例如:

为了更好地使用日期时间数据,read_csv()使用关键字参数parse_dates和date_parser允许用户指定列的日期/时间格式,将string转换为日期时间对象。

通常,我们可能希望分别存储日期和时间数据,或分别存储各种日期字段。 parse_dates关键字可用于指定列的组合,以从中解析日期和/或时间。 您可以指定要parse_dates的列或嵌套列表,结果日期列将被添加到输出的前面(以便不影响现有的列顺序),新的列名为各列Name的连接。

默认情况下,解析器会删除组件日期列,可以选择通过keep_date_col关键字保留它们:

请注意,如果您希望将多个列合并为一个日期列,则必须使用嵌套列表。 换句话说,parse_dates = [1,2]表示第二和第三列应分别解析为单独的日期列,而parse_dates = [[1,2]]意味着应将这两列解析为单个列。

还可以使用字典来指定自定义名称列:

重要的是要记住,如果要将多个文本列解析为单个日期列,则在数据前添加一个新列。

index_col参数基于这组新列而不是原始数据列:

注意:如果列或索引包含不可解析的日期,则整个列或索引将作为对象数据类型原样返回。 对于非标准日期时间解析,请在pd.read_csv之后使用to_datetime()。

注意:read_csv具有用于解析iso8601格式的日期时间字符串的fast_path,例如“ 2000-01-01T00:01:02 + 00:00”和类似的变体。 如果可以安排数据以这种格式存储日期时间,则加载时间将明显缩短,约20倍。

最后,解析器允许您指定自定义date_parser函数,以充分利用日期解析API的灵活性:

Pandas不能原生表示具有混合时区的列或索引。 如果CSV文件包含带有时区混合的列,则默认结果将是带有字符串的object-dtype列,即使包含parse_dates。

要将混合时区值解析为datetime列,请将部分应用的to_datetime()传递给utc = True作为date_parser。

python爬虫---爬取LOL云顶之弈数据

本来是想爬取之后作最佳羁绊组合推算,但是遇到知识点无法消化(知识图谱),所以暂时先不组合了,实力有限

库的安装

1.requests  #爬取棋子数据

2.json  #棋子数据为js动态,需使用json解析

3.BeautifulSoup

实战前先新建个lol文件夹作为工作目录,并创建子目录data,用于存放数据。

1.爬取数据,新建个py文件,用于爬取云顶数据,命名为data.py

1.1定义个req函数,方便读取。//需设定编码格式,否则会出现乱码

def Re_data(url):

re = requests.get(url)

re.encoding = 'gbk'

data = json.loads(re.text)

return data['data']

1.2定义个Get函数,用于读取数据并使用保存函数进行保存数据,保存格式为json。

def Get_data():

# 获取数据并保存至data目录

base_url = ''

chess = Re_data(base_url + 'chess.js')

race = Re_data(base_url + 'race.js')

job = Re_data(base_url + 'job.js')

equip = Re_data(base_url + 'equip.js')

Save_data(chess,race,job,equip)

1.3定义save函数实现读取的数据进行文件保存,保存目录为工作目录下的data文件夹。

def Save_data(t_chess,t_race,t_job,t_equip):

with open('./data/chess.json','w') as f:

json.dump(t_chess,f,indent='\t')

with open('./data/race.json','w') as f:

json.dump(t_race,f,indent='\t')

with open('./data/job.json','w') as f:

json.dump(t_job,f,indent='\t')

with open('./data/equip.json','w') as f:

json.dump(t_equip,f,indent='\t')

1.4定义主函数main跑起来

if __name__ == '__main__':

start = time.time()

Get_data()

print('运行时间:' + str(time.time() - start) + '秒')

至此,数据爬取完成。

2.种族和职业进行组合。

2.1未完成 //未完成,使用穷举方法进行组合会出现内存不够导致组合失败(for循环嵌套导致数组内存超限)

//待学习,使用知识图谱建立组合优选,可参考:

期间遇到的问题:

1.爬取棋子数据时为动态js加载,需通过json模块的loads方法获取

2.3层for循环嵌套数据量大,导致计算失败,需优化计算方法。

python-读取xls文件

import pandas as pd

import warnings

warnings.filterwarnings("ignore")

folder_location='D:/Users/RE/'  -- 文件所在文件夹位置。

inputfile=folder_location+'数据底表.xlsx'  #打开csv文件

data=pd.read_excel(inputfile)

df=data

这说明数据已经 从xls文件里面读取到了 python中。

之后可以根据一些简单的groupby 等语句进行操作。

以下是函数可选参数

pd.read_excel(io, sheetname=0,header=0,skiprows=None,index_col=None,names=None,

            arse_cols=None,date_parser=None,na_values=None,thousands=None,

            convert_float=True,has_index_names=None,converters=None,dtype=None,

            true_values=None,false_values=None,engine=None,squeeze=False,**kwds)

常用参数解析:

io  :excel 路径;  必填项 路径需要包含文件名

sheetname :默认是sheetname为0,返回多表使用sheetname=[0,1],若sheetname=None是返回全表 。注意:int/string返回的是dataframe,而none和list返回的是dict of dataframe。

header  :指定作为列名的行,默认0,即取第一行,数据为列名行以下的数据;若数据不含列名,则设定 header = None;

python函数有哪些

1、print()函数:打印字符串;

2、raw_input()函数:从用户键盘捕获字符;

3、len()函数:计算字符长度;

4、format()函数:实现格式化输出;

5、type()函数:查询对象的类型;

6、int()函数、float()函数、str()函数等:类型的转化函数;

7、id()函数:获取对象的内存地址;

8、help()函数:Python的帮助函数;

9、s.islower()函数:判断字符小写;

10、s.sppace()函数:判断是否为空格;

11、str.replace()函数:替换字符;

12、import()函数:引进库;

13、math.sin()函数:sin()函数;

14、math.pow()函数:计算次方函数;

15、os.getcwd()函数:获取当前工作目录;

16、listdir()函数:显示当前目录下的文件;

17、time.sleep()函数:停止一段时间;

18、random.randint()函数:产生随机数;

19、range()函数:返回一个列表,打印从1到100;

20、file.read()函数:读取文件返回字符串;

21、file.readlines()函数:读取文件返回列表;

22、file.readline()函数:读取一行文件并返回字符串;

23、split()函数:用什么来间隔字符串;

24、isalnum()函数:判断是否为有效数字或字符;

25、isalpha()函数:判断是否全为字符;

26、isdigit()函数:判断是否全为数字;

27、 lower()函数:将数据改成小写;

28、upper()函数:将数据改成大写;

29、startswith(s)函数:判断字符串是否以s开始的;

30、endwith(s)函数:判断字符串是否以s结尾的;

31、file.write()函数:写入函数;

32、file.writeline()函数:写入文件;

33、abs()函数:得到某数的绝对值;

34、file.sort()函数:对书数据排序;

35、tuple()函数:创建一个元组;

36、find()函数:查找 返回的是索引;

37、dict()函数:创建字典;

38、clear()函数:清楚字典中的所有项;

39、copy()函数:复制一个字典,会修改所有的字典;

40、 get()函数:查询字典中的元素。

…………


名称栏目:Python读入数据函数,python读取
URL链接:http://pwwzsj.com/article/hsegod.html