pandas是python语言的扩展库,用于数据分析。
pandas可以使数据构建成一维或者二维数组保存起来,类似于表格。
目录
pandas数据结构
1.Series(一维数据)
就是将数据放在一列中保存起来。
pandas.Series(date,index,dtype,name,copy)
date:放置一组数据
index:数据索引标签,默认从0开始
dtype:数据类型,默认系统自定
name:名称
copy:拷贝数据,默认False
pandas一般使用别名pd,在导入模块时重命名。
import pandas as pd from pandas import DataFrame from pandas import Series a=['王一','赵二','老三','李四','王五'] a_list=pd.Series(a) print(a_list)
默认从0开始排列。
加入索引和名称:
import pandas as pd from pandas import DataFrame from pandas import Series a=['王一','赵二','老三','李四','王五'] a_list=pd.Series(a,index=['第一户','第二户','第三户','第四户','第五户'],name="hello") print(a_list)
数据放在一列中,前面是它的索引。
2.DateFrame(表格型数据结构)
DateFrame是一个表格类型的数据结构,即它可以有很多列。
索引 | 列1 | 列2 | 列3 | ............ |
数据被放在这样的表格中。
pandas.DataFrame(data,index,colums,dtype,copy)
colums:列标签,默认从0开始。
其它数值和Series一样。
import pandas as pd from pandas import DataFrame from pandas import Series data=[['王一','上班'],['李四','摸鱼'],['张三','睡觉']] a_data=DataFrame(data,columns=['姓名','状态']) print(a_data)
在DataFrame数据类型中,同一个列表中的数据放在同一行里,不同列表中的数据放在不同列里,colums列标签要和数据数量一致,否则会报错。
除了放在列表中引用,还可以放在字典中,这样字典的键名就是列名,键值就是该列下的数据 :
import pandas as pd from pandas import DataFrame from pandas import Series data={'姓名':['王一','赵二','老三','李四','王五'],'状态':['上班','上班','放假','出行','上班']} a_data=DataFrame(data) print(a_data)
在pandas中还可以使用loc属性返回指定行,比如上面的代码中,仅修改输出代码为
print(a_data.loc[0])
返回多行索引的时候.loc[1,2,3.....],和列表引用相似。
在pandas中还可以使用.T属性进行行列转换:
import pandas as pd from pandas import DataFrame from pandas import Series f_list=DataFrame() a=['王一','赵二','老三','李四','王五'] b=['上班','上班','放假','出行','上班'] c=['6k','6k','8k','15k','8k'] a_list=pd.DataFrame([a,b,c],index=['姓名','状态','工资']).T print(a_list)
首先列表内容都被放在行中,对每一行的索引index命名,然后进行行列转换,就可以实现上面的效果,不用放在字典中。