这部分会说一些常用的跟数值计算和统计相关的内容
axis、skipna、Series和DataFrame的常用计算方法、唯一值unique()、值计数value_counts()、成员资格isin()
一、axis、skipna
- axis表示汇总计算:该参数默认为0,表示以列来汇总计算;而当axis=1时是以行来汇总计算。
- skipna表示是否忽略NaN:该参数默认True,就是忽略NaN。如果是False,表示不忽略。但不管是行还是列,只要有NaN结果就是NaN
#定义一个dataframe,内容是个字典,并且指定了索引。
df = pd.DataFrame({
'key1':[1,2,3,np.nan,4],
'key2':[4,5,np.nan,7,8],
'key3':[1,2,3,'j','k']},
index = ['a','b','c','d','e'])
print(df)
print('-----------------------------------------------------')
# 对于key3的元素,因为有字符,所以在查询元素类型的时候,就变成了object。
# type()返回的是数据的类型。
# .dtype返回的是数据元素的类型。
print('数组元素的类型是:\n',df['key1'].dtype, df['key2'].dtype, df['key3'].dtype)
print('-----------------------------------------------------')
# mean()计算均值
dm = df.mean()
# 这里需要注意的是,key3因为是字符,所以不参与计算。
print(dm)
print(type(dm))
print('-----------------------------------------------------')
# axis=1 以行进行计算。同样的key3也不参与计算。
print(df.mean(axis=1))
print('-----------------------------------------------------')
# skipna=False 不忽略NaN。
# 因为key1和key2这两列都有NaN,所以计算结果都是NaN。
print(df.mean(skipna=False))
print('-----------------------------------------------------')
# axis=1和skipna=False共同作用
print(df.mean(axis=1, skipna=False))
print('-----------------------------------------------------')
# 通过索引单独计算一列
print('单独计算一列:\n',df['key1'].mean())
运行结果如下:
key1 key2 key3
a 1.0 4.0 1
b 2.0 5.0 2
c 3.0 NaN 3
d NaN 7.0 j
e 4.0 8.0 k
-----------------------------------------------------
数组元素的类型是:
float64 float64 object
-----------------------------------------------------
key1 2.5
key2 6.0
dtype: float64
<class 'pandas.core.series.Series'>
-----------------------------------------------------
a 2.5
b 3.5
c 3.0
d 7.0
e 6.0
dtype: float64
-----------------------------------------------------
key1 NaN
key2 NaN
dtype: float64
-----------------------------------------------------
a 2.5
b 3.5
c NaN
d NaN
e 6.0
dtype: float64
-----------------------------------------------------
单独计算一列:
2.5
二、Series和DataFrame的常用方法(一)
- min最小值、max最大值、sum求和、median求中位数、std求标准差、var求方差、count求非Na值的数量、quantile统计分位数
- skew样本偏度、kurt样本峰度
- cumsum累计和、cumprod累计积、cummax累计最大值、cummin累计最小值