Pandas基础

Pandas基础

 1 import numpy as np
 2 import pandas as pd
 3 #pandas 基础操作
 4 data=np.arange(18).reshape(6,3)#数据
 5 print('数据:')
 6 print(data)
 7 
 8 dates=pd.date_range('20180605', periods=6)#pandas时间序列
 9 print('pandas 时间序列')
10 print(dates)
11 
12 #pandas以时间作为行索引,[a,b,c]作为列索引的表
13 print('pandas以时间作为行索引,[a,b,c]作为列索引的表')
14 data_frame=pd.DataFrame(data=data, index=dates, columns=['a', 'b', 'c'])
15 print(data_frame)
16 
17 #表格数据的简单统计
18 print('对每列数据计算简单的统计数据:')
19 print(data_frame.describe())
20 
21 print('按行索引降序排列:')
22 print(data_frame.sort_index(axis=0, ascending=False))#按行索引降序排列
23 
24 print('按列索引降序排列:')
25 print(data_frame.sort_index(axis=1,  ascending=False))#按列索引降序排列
26 
27 print('按索引为''a''的列的值降序排列:')
28 print(data_frame.sort_values(by='b', ascending=False))#数据按照某一列值排序
29 
30 print('数据表转置:')
31 print(data_frame.T)#数据表转置
32 
33 #data frame取值操作
34 print('两种取出列索引为"a"的数据:')
35 print(data_frame['a'], data_frame.a )
36 print('loc:取出行索引为"2018-06-08",列索引为"a""c"数据:')
37 print(data_frame.loc['2018-06-08', ['a','c']])
38 print('iloc:按照位置索引来取值:')
39 print(data_frame.iloc[3:5,0:2])
40 print('bool 索引:显示"a"列中大于6的所有行')
41 print(data_frame[data_frame['a']>=6])
42 
43 #data frame赋值
44 print('改变第2行,第2列的值为0:')
45 data_frame.iloc[4,2]=np.nan
46 print(data_frame)
47 print('改变第4行的所有值:')
48 data_frame.iloc[3,:]=[100, 100, 100]
49 print(data_frame)
50 print('添加一列:')
51 data_frame['d']=[1,2,3,4,5,6]
52 print(data_frame)
53 
54 #处理数据中的nan
55 print('判断是否为nan:')
56 print(data_frame.isnull())
57 print('删去包含nan的行:')
58 print(data_frame.dropna(axis=0, how='any'))
59 print('删去包含nan的列:')
60 print(data_frame.dropna(axis=1, how='any'))
61 print('替换nan为88:')
62 print(data_frame.fillna(value=88))
63 
64 #存储数据与读取数据(csv)
65 data_frame.to_csv('data.csv')
66 data_fr=pd.read_csv('data.csv')
67 print(data_fr)
68 
69 #data frame 拼接
70 print('data_frame:')
71 print(data_frame)
72 date2=pd.date_range('20180605', periods=3)
73 data_frame2=pd.DataFrame(np.arange(12).reshape(3,4), index=date2, columns=['b','c','d','e'])
74 print('data_frame2:')
75 print(data_frame2)
76 print('列向拼接data frame,保留同列号的数据,并且重排行行索引:')
77 print(pd.concat([data_frame, data_frame2], axis=0, ignore_index=True, join='inner'))
78 print('行向拼接data frame,保留同行号的数据,并且重排行索引:')
79 print(pd.concat([data_frame, data_frame2], axis=1, ignore_index=True, join='inner'))

 

原文地址:https://www.cnblogs.com/AlgrithmsRookie/p/11741130.html