Python数据分析Pandas库数据结构(一)

pandas数据结构 1.生成一维矩阵模拟数据 import pandas as pd
import numpy as np
s = pd.Series([1,2,3,4,np.nan,9,9])
s2 = pd.date_range(\'20181201\',periods=6)#periods周期
2.生成二维矩阵模拟数据 import pandas as pd
import numpy as np
#(1)创建二维矩阵
df = pd.DataFrame([[1,2,3],[4,5,6],[7,8,9]],columns=list(\'ABC\'),index=data_index)
#(2)创建二维矩阵自动生成
df1 = pd.DataFrame(np.arange(1,10).reshape(3,3),columns=list(\'ABC\'),index=data_index)
df1
#(3)字典的方式
data_index = pd.date_range(\'20181016\',periods=3)
df2 = pd.DataFrame({
   \'A\':[1,2,3],
   \'B\':[4,5,6],
   \'C\':[7,8,9]
},index=data_index)
df2
3.排序 索引操作 1.索引默认从0开始

操作列df[\'列名\'] df[[\'列1\',\'列2\'.....]]

操作行:df.loc/at[0] df.loc/at[0:3] df.loc/at[[1,5,6]

2.索引被替换为字符串或时间

操作列,:根据列名操作,无变化,同上

操作行:df.loc[0:3]报错 用df.iloc/iat[0:3]代替

按照条件筛选

df[df>0] 取出所有大于0的元素

df[df.列名>0] 取出对应列大于0的数据

isin([值1,值2..]) 判断数据在列表内.返回True/False

赋值

df[\'新列名\'] = 值 创建新列

df[\'列名\'] = 新值

df.iloc[1:3,\'A\'] = 值

空值判断

空判断df.isna()返回True/False

填充: df.fillna(value=值) ,如果为空,则用值代替

删除空值:df.dropna(how=any/all)

import pandas as pd
import numpy as np
#重置索引
df2.iloc[1,2] = np.nan
df2

#判断
df2.isna()

#填充数据
df3 = df2.fillna(value=\'bb\')#替换,把空值得数据替换成bb,不操控原数组,
df3

#删除有空值的数据,整行都删除
df2.dropna()

#当数组索引数据都为空的时候才删除数据
df2.dropna(how=\'all\')
df2


#删除有空值的数据,整行都删除,原数组不变
xx = df2.dropna(how=\'any\')
xx

 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zwjxzj.html