Pandas教程( 四 )

  • Axis = 0 , 表示行 , 如果未指定 , 默认为Axis=0 。
  • Axis = 1 , 表示列 。

Pandas教程文章插图
a) (删除nan值) 。
data.isnull().values.any()是否有丢失的数据?
True如果没有将其分配到(新)变量中 , 则应该指定inplace=True , 以便更改能生效 。
data.dropna(axis=0, inplace=True) #从行中删除nandata.isnull().values.any() #是否有丢失的数据?Falseb) 删除列
data.drop(columns=['PassengerId', 'Name'], axis=1).head()
Pandas教程文章插图
c) value_counts也可以显示NaN值 。
data.Age.value_counts(dropna=False)NaN17724.003022.002718.002628.0025... 36.50155.50166.00123.5010.421Name: Age, Length: 89, dtype: int64d) 替换丢失值
  • 创建新的数据帧 , 复制数据 , 以保持原始数据的完整性 。
new_df = data.copy()计算年龄平均值:
new_df.Age.mean()29.69911764705882
  • 用数据的平均值填充NAN , 并将结果分配给一个新列 。
new_df['Age_mean'] = new_df.Age.fillna(new_df.Age.mean())年龄的中值
new_df.Age.median()28.0用数据的中值填充任意NAN , 并将结果分配给一个新列 。
new_df['Age_median'] = new_df.Age.fillna(new_df.Age.median())
  • 验证结果
new_df[['Age', 'Age_mean', 'Age_median']].isnull().sum()Age177Age_mean0Age_median0dtype: int64显示第106至110行 , 以验证两个NAN示例的插补(第107和109行) 。
new_df[['Age', 'Age_mean', 'Age_median']][106:110]
Pandas教程文章插图
结束了
Pandas教程文章插图
结论我真诚地希望你觉得这个教程有用 , 因为它可以帮助你编写代码的开发 。