通过pandas.Dataframe来创建Dataframe数据结构
pandas.Dataframe(data,index,dtype,columns)
上述参数中,data可以为列表、array(数组)或dict(字典)
上述参数中,index表示行索引,columns代表列名或者列标签
一种表结构。
方法名称 | 说明 |
---|---|
values | 返回对象所有元素的值 |
index | 返回行索引 |
dtypes | 返回索引 |
shape | 返回对象数据形状 |
ndim | 返回对象的维度 |
size | 返回对象的个数 |
columns | 返回列标签(只针对dataframe数据结构) |
list1=[['张三',23,'男'],['李四',27,'女'],['王二',26,'女']]#使用嵌套列表,每一行
df1=pd.DataFrame(list1,columns=['姓名','年龄','性别'])#表头
df2=pd.DataFrame({'姓名':['张三','李四'、'王二'],'年龄':[23,27、26],'性别':['男','女'、'女']})
array1=np.array([['张三',23,'男'],['李四',27,'女'],['王二',26,'女']])#使用numpy
df3=pd.DataFrame(array1,columns=['姓名','年龄','性别'],index=['a','b','c'])
#创建方式一
list1=[['张三',23,'男'],['李四',27,'女'],['王二',26,'女']]#使用嵌套列表,每一行
df1=pd.DataFrame(list1,columns=['姓名','年龄','性别'])#表头
df1.head(5)
姓名 年龄 性别
0 张三 23 男
1 李四 27 女
2 王二 26 女
#创建方式二:通过字典创建dataframe数据框结构
df2=pd.DataFrame({'姓名':['张三','李四'、'王二'],'年龄':[23,27、26],'性别':['男','女'、'女']})
df2
姓名 年龄 性别
0 张三 23 男
1 李四 27 女
2 王二 26 女
#创建方式三 通过数组创建数据结构
array1=np.array([['张三',23,'男'],['李四',27,'女'],['王二',26,'女']])#使用numpy
df3=pd.DataFrame(array1,columns=['姓名','年龄','性别'],index=['a','b','c'])
df3
姓名 年龄 性别
a 张三 23 男
b 李四 27 女
c 王二 26 女
df3.values#输出数据框的值,结果是数组结构
array([['张三', '23', '男'],
['李四', '27', '女'],
['王二', '26', '女']], dtype=object)
df3.index#输出行索引
Index(['a', 'b', 'c'], dtype='object')
df3.columns#输出列标签
Index(['姓名', '年龄', '性别'], dtype='object')
df3.columns.tolist()#输出列标签,转化为列表
['姓名', '年龄', '性别']
df3.ndim #有行与列构成的,所以二维
2
series1.ndim #只有一列,序列
1
df2.shape #几行几列
(3, 3)
series1.shape#一维数据结构,只有5个元素
(5,)
df3.size#元素个数
9
df3.dtypes#列标签的数据类型,通过数组定义的
姓名 object
年龄 object
性别 object
dtype: object
df2.dtypes#列标签的数据类型,通过字典定义的
姓名 object
年龄 int64
性别 object
dtype: object