dataframe是python中pandas中的一种数据结构。类似于表的一种结构。
构建dataframe数据。
import pandas
import numpy as np
from pandas import DataFrame
?#df=DataFrame([[1,2,3],[4,5,6]])
df = DataFrame(data=np.arange(16).reshape(4,4),columns=list(‘abcd’))
DataFrame(data=np.arange(16).reshape(4,4),columns=list(‘abcd’),index=list(‘ABCD’))
数据选取
df[0:1] 选取第一行 按位置选取的 df[0] 这样是错误的的
df[‘a’] 选取第a列 按列名选取
df.loc[0] 按index选取行 df.loc[0:3]选取0,1,2行 df.loc[‘A’] 选取索引为A的行
df.loc[[‘A’],’a’] 行列一起选
df.iloc[0,2] 只能通过位置来选择,选择第一行第三列
df.iloc[0:3,1:3]通过位置切片来选择 可以选多的,也可以选中一个元素
df.at[1,’a’]通过名称来选择,只能选中一个
df.iat[1,2]通过位置来选择 只能选中一个
df.ix[1] 通过位置来选取行 df.ix[‘A’]通过索引选择行
df.ix[1,’a’] 同时选取行列,位置和索引都可以 可选中一个元素,也可以是多个
df选择后的数据基本都是dataframe结构,不能直接使用
使用df.values可以获取它的值
df.columns 输出列的信息
df.index 输出索引相关信息
df.describe() 会显示每一列的总数均值等
df.info() 显示基本的数据信息
df.count() df.mean() df.max() df.min() 统计每一列的统计量
df.head(10) 输出前10行 df.tail(10) 输出最后10行
df.isnull.sum() 按列统计表中的空值的数量
df.where(df>10).count() 按列统计 表中大于10的元素个数
df.groupby(‘y’).count() 根据y属性进行分组,统计每一组的分布情况
df[df[‘price’]<’7.2’] 把符合条件的行显示出来
df.where(df[‘price’]<’7.2’) 所有行都显示,不符合条件的price显示为nan