数据科学(八)
丢弃
- 丢弃行 axis=0
- 丢弃列 axis=1
import pandas as pd
import numpy as np
## 丢弃部分数据
df = pd.DataFrame(np.random.randn(4, 6), index=list('ABCD'), columns=['one', 'two', 'three', 'four', 'five', 'six'])
print('丢弃')
print(df)
print(df.drop('A'))
df2 = df.drop(['two', 'four'], axis=1)
print(df2)
apply&appymap函数
- apply: 将数据按行或列进行计算,可标量可序列
默认按列操作 axis=0
按行操作 axis=1 - applymap: 将数据按元素为进行计算
import pandas as pd
import numpy as np
### 函数应用
df = pd.DataFrame(np.arange(12).reshape(4, 3), index=['one', 'two', 'three', 'four'], columns=list('ABC'))
print('函数应用')
# apply
##标量
# 每一列作为一个 Series 作为参数传递给 lambda 函数
df.apply(lambda x: x.max() - x.min())
print(df)
# 每一行作为一个 Series 作为参数传递给 lambda 函数
df.apply(lambda x: x.max() - x.min(), axis=1)
print(df)
##序列
def min_max(x):
return pd.Series([x.min(), x.max()], index=['min', 'max'])
df.apply(min_max, axis=1)
# applymap: 逐元素运算
df = pd.DataFrame(np.random.randn(4, 3), index=['one', 'two', 'three', 'four'], columns=list('ABC'))
print('applymap函数')
##只显示小数点前两位
formater = '{0:.02f}'.format
print(df.applymap(formater))
数据唯一性及成员资格
适用于 Series
### 数据唯一性及成员资格
s = pd.Series(list('abbcdabacad'))
print('数据唯一性及成员资格')
print(s.unique())
print(s.value_counts())
inin=s.isin(['a', 'b', 'c'])
print(inin)