机器学习工具包-Pandas
1.导入包
import pandas as pd
数据的读取
df = pd.read_csv('文件路径') 文件需要加后缀
df.head(x) 默认展示前五条数据,x代表展示前x条
df.tail(x) 展示后面的数据
df.info() 当前这个文件的信息,行列的信息、数据类型
df.index 当前索引的范围
df.columns 列名,表格的第一行
df.dtype 类型
df.values 转换结构是数组结构,读取每一行数据
自己创建一个dataframe结构
data = {'contury':['aaa','bbb','ccc'],
'population':[10,12,14]}
df_data = pd.DataFrame(data)
df_data
取指定的数据
age = df['Age']
age[:5]
指定的索引
df = df.set_index('Name')
df.head()
age['aaaa'] 指定人名直接输出年龄
具体元素操作和numpy一致
df.decribe() 只能是数值数据,展示基本的统计特性
pandas索引结构
ioc位置,loc传具体内容
bool类型索引
df['Fare'] > 40 返回是true或false
df[df['Fare'] > 40][:5]
df[df['sex'] == 'male'][:5]
df.loc[df['sex']=='male','Age'].mean()
groupby函数
import pandas as pd
df.groupby('key').sum()
df.groupby('key').aggregate(np.mean)
df.groupby('sex')['Age'].mean()
数值计算
import pandas as pd
df.sum()
df.cov() 协方差
df.corr() 相关系数
df['Age'].value_counts() 每一类型有多少个
df['Age'].value_counts(ascending = True) 为true是升序,false为降序
df['Age'].value_counts(ascending = True,bins = 5) 分成5个区间
对象操作
data = [10,11,12]
index = ['a','b','c']
s = pd.Series(data = data,index = index)
s
s[0] 直接取索引即可
s.loc['b']
改操作
s1.s.copy()
s1['a'] = 100
s1
s3 = s1.append(s2) 增加一列
删除操作
del s1['A']
s1.drop(['b','d'],inplace = True)
merge合并
res = pd.merge(left,right,on = 'key')
res = pd.merge(left,right,on = ['key1','key2'],how = 'outer',indicator = True)
res = pd.merge(left,right,how = 'left')
显示设置
pd.get_option('display.max_rows')
pd.set_option('display.max_rows',6)
pivot操作
example_pivot = example.pivot('index = 'A',columns = 'B',values = 'c')
example_pivot
df.pivot_table('index = 'A',columns = 'B',values = 'c',aggfunce = 'max/count/mean')