1.4Pandas常用数据结构DataFrame和方法
通过pandas.DataFrame来创建DataFrame数据结构
pandas.DataFrame(data,index,dtype,columns)
说明:dataframe本身那就是一种表结构,因而在做数据分析时最常用。
data:列表、array、或dict
index:行索引
columns:列名或者列标签 # columns只针对dataframe数据结构,series没有该方法
import pandas as pd
1)通过列表(list)方式创建列表
list1 = [['张三',23,'男'],['里斯',27,'女'],['Sindy',21,'男'],['Jane',17,'女']] #使用嵌套列表
df1 = pd.DataFrame(list1,columns = ['姓名','年龄','性别'])
df1.head(5) #5表示共显示5行元素?
姓名 | 年龄 | 性别 | |
---|---|---|---|
0 | 张三 | 23 | 男 |
1 | 里斯 | 27 | 女 |
2 | Sindy | 21 | 男 |
3 | Jane | 17 | 女 |
2)通过字典(dict)方式创建列表
df2 = pd.DataFrame({'Name':['张三','里斯','Sindy','Jane'],'Age':[23,24,21,17],'Sex':['男','女','男','女']})
df2
Name | Age | Sex | |
---|---|---|---|
0 | 张三 | 23 | 男 |
1 | 里斯 | 24 | 女 |
2 | Sindy | 21 | 男 |
3 | Jane | 17 | 女 |
3)通过数组(array)方式创建列表
import numpy as np
array1 = np.array([['张三',23,'男'],['里斯',27,'女'],['Sindy',21,'男'],['Jane',17,'女']])
df3 = pd.DataFrame(array1,columns=['姓名','年龄','性别'],index=['a','b','c','d'])
df3
姓名 | 年龄 | 性别 | |
---|---|---|---|
a | 张三 | 23 | 男 |
b | 里斯 | 27 | 女 |
c | Sindy | 21 | 男 |
d | Jane | 17 | 女 |
DataFrame的属性、方法:
df3.values
array([['张三', '23', '男'],
['里斯', '27', '女'],
['Sindy', '21', '男'],
['Jane', '17', '女']], dtype=object)
df3.index # 行索引标签
Index(['a', 'b', 'c', 'd'], dtype='object')
df3.columns # 列标签
Index(['姓名', '年龄', '性别'], dtype='object')
df3.columns.tolist() # 将数据结构转换成列表
['姓名', '年龄', '性别']
df3.ndim # 查看列表维度
2
df2.shape # 查看列表的形状(几行几列)
(4, 3)
df3.size # 查看元素个数
12
df3.dtypes # 查看每个列标签的数据类型,因为年龄是通过数组创建的object类型
姓名 object
年龄 object
性别 object
dtype: object
df1.dtypes # 这里年龄是整数型
df2.dtypes
Name object
Age int64
Sex object
dtype: object