这一块主要用于记录自己利用这段空闲时间,进一步提高自己使用pandas工具的能力,对一些模糊问题进行重新学习及强化。
numpy:处理数值型数据
pandas:还可以处理字符串、时间序列
(1)Series:一维,带标签数组
(2)DataFrame:二维,Series容器
import pandas as pd
# 第一种
a=pd.Series([1,2,3,4,5],index=list('abcde'))
# 第二种
temp_dict={1:'a',2:'b',3:'c',4:'d',5:'e'}
a=pd.Series(temp_dict)
a=pd.Series([1,2,3,4,5])
a.astype('float64')
tem_dict={'age':30,'name':'xiaohong','tel':10086}
a=pd.Series(tem_dict)
b=a['age'] # 取某个单一的元素
b=a['tel']
b=a[0]
b=a[1]
b=a[[1,2]] # 取两个元素
b=a[['age','tel']]
a=pd.Series(np.arange(10))
b=a[a>4] # 布尔索引
Series的索引和值
tem_dict={'age':30,'name':'xiaohong','tel':10086}
a=pd.Series(tem_dict)
print(a.index,type(a.index)) # 类型为Index
print(a.values,type(a.values)) # 类型为numpy.ndarry
Series对象本质上由两个数组组成,一个数组构成对象的键(index,索引),一个数组构成对象的值(values),键 ——>值。
df=pd.DataFrame(np.arange(10).reshape((2,5)))
df=pd.DataFrame(np.arange(10).reshape((2,5)),index=list('ab'),columns=list('WXYZU))
DataFrame对象既有行索引,又有列索引。
行索引:表明不同行,横向索引,叫index,0轴,axis=0
列索引:表明不同列,纵向索引,叫columns,1轴,axis=1
df.shape # 行数 列数
df.dtypes # 列数据类型
df.ndim # 数据维度
df.index # 行索引
df.columns # 列索引
df.values # 对象值,二维ndarray数组
df.head(3) # 显示头部几行,默认5行
df.tail(3) # 显示末尾几行,默认5行
df.info() # 相关信息概览:行数、列数、列索引、列非空值个数、列类型、内存占用
df.describe() # 快速综合统计结果:计数、均值、标准差、最大值、四分位数、最小值
df=pd.read_csv(fname)
df=pd.read_excel(fname)
df=pd.read_table(fname)
df=pd.read_sql(sql_sentence,connection)
df=pd.read_html()
df=pd.read_json()
df=pd.read_pickle(fname)
1、学习视频
2、pandas.Series用法教程