工作时经常用到pandas,但是一直没有系统的学习,这次算是自己的一个小总结吧
1.series
series 相当于python里面的列表,说实话,使用pandas的话,series这个格式用的频率很低,反正我是这样。
但是这个比list还是好用一些的。例如:
import pandas as pd
a=pd.Series([1,3,4,5,6])
print(a[a>3])
print(a*2)
很方便
python里面的字典也可以做Series
b={'haha':111,'wawa':666}
obj_series=pd.Series(b)
print(obj_series)
打印结果
haha 111
wawa 666
dtype: int64
两个列表还可以做运算
import pandas as pd
a=pd.Series([1,3,4,5,6])
b=pd.Series([5,6,7,8,9])
total=a+b
print(total)
0 6
1 9
2 11
3 13
4 15
dtype: int64
2. Dataframe
Dataframe是pandas非常重要的一个数据结构,你可以理解它就是excle或者MySQL的表,因为很多操作就和你操作excle差不多,当然很多操作也等于SQL语句。
1.筛选:
想象你是用excle做筛选时,先点击筛选,然后在每一列的设置筛选条件,pandas也是这样进行筛选的。
import pandas as pd
a=pd.DataFrame([[1,2,3],[4,5,6],[7,8,9]],columns=["a","b","c"])
print(a)
print("分割线---------")
print(a["a"][(a["b"]>2)&(a["c"]<9)])
a b c
0 1 2 3
1 4 5 6
2 7 8 9
分割线---------
1 4
Name: a, dtype: int64
在上述代码中,我们进行了筛选,我们要数据a中的'a'列,但是条件是b列要大于2 并且c列要小于9,这样的条件你可以一直写,只需要中间添加&或者| 符号就行。
2.索引,
可以使用Dataframe.ix[‘索引名’]来取值