当前位置: 代码迷 >> 综合 >> python之pandas学习 Series(1)
  详细解决方案

python之pandas学习 Series(1)

热度:123   发布时间:2023-09-19 11:25:31.0

1.为什么学习pandas

pandas和numpy一样都是处理数据的,但numpy只能处理数值型数据,而pandas除了可以处理数值型数据(基于numpy)外,还可以处理其他类型的数据

2.pandas常用的数据结构

2.1 Series 一维,带标签数组

2.2 DataFrame 二维,Series容器

3.开始学习

先安装pandas,直接cmd里写

pip install pandas

然后在工程里把此包引用了就行

4. Series

import pandas
a=pandas.Series([1,2,3,4])
print("Series小例子(带标签的数组就是Series输出有索引):",a,sep='\n')Series小例子(带标签的数组就是Series输出有索引):0    11    22    33    4dtype: int64
'''Series指定索引,指定时候必须和Series的长度相等'''
a2=pandas.Series([4,5,6,7],index=list("abcd"))
print("输出指定了索引的Series:",a2,sep='\n')输出指定了索引的Series:a    4b    5c    6d    7dtype: int64
'''通过字典方式创建自定义索引的Series'''
o={
    "name":"drt","age":22,"gender":"man"}
a3=pandas.Series(o)
print("通过字典方式创建自定义索引的Series:",a3,sep='\n')通过字典方式创建自定义索引的Series:name      drtage        22gender    mandtype: object
'''修改Series的dtype'''
b=a.astype("float")#a的dtyoe并不改变
print("打印修改后的Series",b,sep='\n0')打印修改后的Series00    1.01    2.02    3.03    4.0dtype: float64
'''通过索引或位置取Series的值'''
print("通过索引或位置取,都一样:",a3["name"],a3[0])通过索引或位置取,都一样: drt drt
print("取第一行以后的,包括第一行:",a3[1:],sep='\n')取第一行以后的,包括第一行:age        22gender    mandtype: object
print("取第二行以前的,包括第二行:",a3[:2],sep='\n')取第二行以前的,包括第二行:name    drtage      22dtype: object
print("取第0行和第2行(通过位置取):",a3[[0,2]],sep='\n')取第0行和第2行(通过位置取):name      drtgender    mandtype: object
print("取第0行和第2行(通过索引取):",a3[["name","gender"]],sep='\n')取第0行和第2行(通过索引取):name      drtgender    mandtype: object
'''取出符合条件的值'''
c=pandas.Series(range(5,15))
print(c)0     51     62     73     84     95    106    117    128    139    14dtype: int64
print("取出值大于10的:",c[c>10],sep='\n')取出值大于10:6    117    128    139    14dtype: int64
'''只取Series的索引或值'''
print("打印出a3的索引:",a3.index,sep='\n')
for i in a3.index:print(i)
print("打印Series的值:",a3.values,sep='\n')
for i in a3.values:print(i)打印出a3的索引:Index(['name', 'age', 'gender'], dtype='object')nameagegender打印Series的值:['drt' 22 'man']drt22man