python中pandas常用方法

一、创建pandas可识别的一维数据和二维数据、多维数据
pd.Series(list/dict)
pd.DataFrame(list/dict,index,column) #传入array二维数组,index行索引,column列索引
直接读取csv、数据库数据、txt

pd.date_range(开始时间,periods=周期)#
多维(多层索引)
index = pd.MultiIndex.from_tuples(tuples, names=['first', 'second'])
df = pd.DataFrame(np.random.randn(8, 2), index=index, columns=['A', 'B'])
二、定位数据
df.columnName按列名索引 df.A=df['A'],比如:列名为‘A’
df[columnName]按列名索引,与上面一样
df.loc[indexName]按行名索引
df.loc[indexName]按行名索引,与上面一样
df.loc[:]切片的另一种形式索引
df.loc[dates[0]]查出含dates数组结构行数的第一个元素
df.loc[:,'A','B']查出A,B两列
df.iloc[3]按整数查出第三列
df.iloc[[1,2,4],[0,2]]按整数查出0,1,3行数,0,1列的数据。
df.iloc[1,1]按整数查出1行1列的数据
df.iat[1,1]按整数查出1行1列的数据与iloc方法一样
df.at[:]与loc方法一样
选择、设置标准 Python / Numpy 的表达式已经非常直观,交互也很方便,但对于生产代码,我们还是推荐优化过的 Pandas 数据访问方法:.at、.iat、.loc 和 .iloc。
df[:,:]按行列索引,切片方式
df.at[:,:6]

按计算条件查询出数据

df[条件]
条件:
df.A>0#代表A列全部大于0的数据
df.indexName>0,代表IndexName行数全部大于0的数据
df>0,整个表的数据>0的数据
df.isin(数组A)#筛选出包含数据A的数据
df2[df2['E'].isin(['two', 'four'])]#筛选出E列包含foo,key值的数据

通过可调用选择

.loc,.iloc以及[]索引也可以接受一个callable索引器。在callable必须与一个参数(调用系列或数据帧)返回的有效输出索引功能。loc查询的是行
df1.loc[lambda df: df.A > 0, :]
df1.iloc[:, lambda df: [0, 1]]
df1[lambda df: df.columns[0]]
df1.A.loc[lambda s: s > 0]

三、更改数据或赋值

通过索引=目标值
例如:df.iat[1]='foo'#第2行的数据全部等于foo
按标签赋值
df.at[dates[0], 'A'] = 0
按条件where、条件赋值
df2[df2 > 0] = -df2#将全部大于0的数据进行负数赋值。

四、合并数据
五、分离数据
六、快速计算数据的合、平方根、减法、乘法、除法、sin,cos,tant等
七、数据排序

posted @ 2020-07-14 11:12  hisweetyGirl  阅读(778)  评论(0编辑  收藏  举报