非理工科编程零基础文科生秒懂python学习笔记:pandas库数据表格创建和运算基础有哪些?


#dataframe的数据类型
#每行的数据类型可以不一样
#行索引为index 等同于excel表格最左边的1、2、3、4
#列索引为column 等同于excel表格最顶端的A|B|C|D|E
#每一列都是一个series对象

 

目录

创建一个列表并保存为对象

 创建一个带有索引号的列表并保存为对象

 通过直接赋值修改series

修改索引号

Series还能将两个数据列表相加


创建一个列表并保存为对象

print("\n创建一个列表并保存为对象")
s01 = pd.Series([1, 2, 3, 6, 8])
print("输出index索引号的范围:",s01.index)
print("输出values值:",s01.values)

非理工科编程零基础文科生秒懂python学习笔记:pandas库数据表格创建和运算基础有哪些?

 创建一个带有索引号的列表并保存为对象

print("\n\n创建一个带有索引号的列表并保存为对象")
s02 = pd.Series([1, 2, 3, 6, 8], index=['A', 'B', 'C', 'D', 'E'])
print("输出index索引号的范围:",s02.index)
print("输出列表2的values值:",s02.values)

非理工科编程零基础文科生秒懂python学习笔记:pandas库数据表格创建和运算基础有哪些?

 

通过字典的形式,

创建series列表并保存为对象,

然后输出索引和保存的值:

print("\n\n通过字典的形式,创建series列表并保存为对象,然后输出索引和保存的值:")
s03 = pd.Series({'abeiduo': 102345, 'youla': 505689, 'chongyun': 612478})
print("输出index索引号的范围:",s03.index)
print("输出列表3的values值:",s03.values)

非理工科编程零基础文科生秒懂python学习笔记:pandas库数据表格创建和运算基础有哪些?

 通过字典的形式,

创建series列表并保存为对象,

还可以指定索引号,

如果某个索引号没有对应的值,会显示NaN

print("\n\n通过字典的形式,创建series列表并保存为对象,还可以指定索引号,如果某个索引号没有对应的值,会显示NaN")
s04 = pd.Series({'b': 1, 'a': 0, 'c': 2}, index=["a", "b", "c", "d"])
print("输出列表4的索引和对应值:\n", s04)

非理工科编程零基础文科生秒懂python学习笔记:pandas库数据表格创建和运算基础有哪些?

 创建series时可以通过name参数指定一个名称

print("\n\n创建series时可以通过name参数指定一个名称")
s05 = pd.Series([1,2,3,4,5], name='integer array')
print("输出列表05的名称:\n",s05.name)
print("输出列表05:\n",s05)

非理工科编程零基础文科生秒懂python学习笔记:pandas库数据表格创建和运算基础有哪些?

 创建series时,

可以使用整数、字符串作为索引

print("\n\n创建series时,可以使用整数、字符串作为索引")
s06 = pd.Series([1, 2, 3, 6, 8])
print("使用整数作为索引:\n",s06[0])
s07 = pd.Series({'b': 1, 'a': 0, 'c': 2})
print("使用字符串作为索引:\n",s07['b'])
print("可以传入一个列表来读取series的多个数据:\n",s07[['a', 'b']])

非理工科编程零基础文科生秒懂python学习笔记:pandas库数据表格创建和运算基础有哪些?

 通过直接赋值修改series

print("\n\n通过直接赋值修改series")
s08 = pd.Series([1, 2, 3, 4], index=['a', 'b', 'c', 'd'])
s08['a'] = 100
print("修改后a的值为:\n",s08)
s08['b':'c'] = 5
print("""pandas的切片运算跟python的不一样,
pandas的切片'b':'c'包括两个索引
python的切片'b':'c'只有一个索引不包括后者\n
注意新修改b、c的值变为:""")
print(s08)

非理工科编程零基础文科生秒懂python学习笔记:pandas库数据表格创建和运算基础有哪些?

修改索引号

print("\n\n修改索引号:")
s09 = pd.Series([1, 2, 3, 4], index=['a', 'b', 'c', 'd'])
s09.index = ['e', 'f', 'g', 'h']
print("输出新的索引号:\n",s09)

非理工科编程零基础文科生秒懂python学习笔记:pandas库数据表格创建和运算基础有哪些?

Series的数学运算跟高中的向量运算类似:

print("\n\nSeries的数学运算跟高中的向量运算类似:")
s10 = pd.Series([1, 2, 3, 6, 8])
s10x2 = s10*2
print("每个值都乘以2后:\n",s10x2)

 非理工科编程零基础文科生秒懂python学习笔记:pandas库数据表格创建和运算基础有哪些?

非理工科编程零基础文科生秒懂python学习笔记:pandas库数据表格创建和运算基础有哪些?

 

Series还能将两个数据列表相加

print("\n\nSeries还能将两个数据列表相加:")
s11 = pd.Series([1, 2, 3, 6, 8])
s12 = pd.Series([3, 3, 3, 3, 3])
s11_plus_s12 = s11 + s12
print(s11_plus_s12)

 非理工科编程零基础文科生秒懂python学习笔记:pandas库数据表格创建和运算基础有哪些?

 如果Series发现两个列表的索引不一样,

还能将索引号对齐再进行运算

 

print("\n\n如果Series发现两个列表的索引不一样,还能将索引号对齐再进行运算:")
s12 = pd.Series([1, 2, 3, 4], index=['一月', '二月', '三月', '四月'])
s13 = pd.Series([1, 2, 3, 4], index=['二月', '三月', '四月', '五月'])
s12_plus_s13 = s12+s13
print(s12_plus_s13)

非理工科编程零基础文科生秒懂python学习笔记:pandas库数据表格创建和运算基础有哪些?

 非理工科编程零基础文科生秒懂python学习笔记:pandas库数据表格创建和运算基础有哪些?

 

上一篇:人力资源数据分析与挖掘


下一篇:python学习教程28-python+pandas数据分析练习-8