美文网首页
Ptyhon Pandas常用的操作

Ptyhon Pandas常用的操作

作者: 致Great | 来源:发表于2018-10-25 17:39 被阅读33次

1 统计空值

# print(data.isnull().any()) # 判断哪些列存在缺失值
# print(data[data.isnull().values==True]) # 判断单元是否为缺失值

下面是统计空值的个数

import pandas as pd
import numpy as np
data={
    'a':[1,2,3,4],
    'b':[3,5,np.nan,np.nan],
    'c':[np.nan,0,np.nan,0],
}

df=pd.DataFrame(data)
print(df)

创建了一个df,输出如下

   a    b    c
0  1  3.0  NaN
1  2  5.0  0.0
2  3  NaN  NaN
3  4  NaN  0.0

输出每个数据是否为空值

print(df.isnull())
       a      b      c
0  False  False   True
1  False  False  False
2  False   True   True
3  False   True  False

统计空值的个数,下面两种方式效果一样

print(df.isnull().astype(int).sum())
print(df.shape[0]-df.count())
a    0
b    2
c    2
dtype: int64
a    0
b    2
c    2
dtype: int64

判断某一列是否存在空值;判断空值所在的行

print(df[df.T.isnull().any()].columns)
print(len(df.columns[df.isna().any()].tolist()))
print(df[df.isnull().values==True])

2 去除重复项

DataFrame.drop_duplicates(subset=None, keep='first', inplace=False)
  • subset : column label or sequence of labels, optional
    用来指定特定的列,默认所有列
  • keep : {‘first’, ‘last’, False}, default ‘first’
    删除重复项并保留第一次出现的项
  • inplace : boolean, default False
    是直接在原来数据上修改还是保留一个副本

3 pandas 修改列名

df.rename(columns={'oldName1': 'newName1', 'oldName2': 'newName2'})

总结

  • 在pandas中,大部分方法如果有参数inplace这个参数,取值为False时修改pandas后不替换原来的df;如果为True时,修改df后替换原先的值

参考资料

相关文章

网友评论

      本文标题:Ptyhon Pandas常用的操作

      本文链接:https://www.haomeiwen.com/subject/bnuctqtx.html