美文网首页
Pandas4——Pandas高级处理

Pandas4——Pandas高级处理

作者: 蜘蛛鱼 | 来源:发表于2020-03-10 22:55 被阅读0次

    目录:

    1. 缺失值处理/替换
    2. 数据离散化
    3. 合并
    4. 交叉表与透视表
    5. 分组与聚合

    1. 缺失值处理

    • data.dropna()
      删除np.nan的缺失值
      按照行去删除,可以指定axis
    • data['a'].fillna(data['a'].mean(), inplace = True)
      填充平均值
    • df.replace(to_replace=, value= )
      思路:先替换为nan,再做上述处理
      pandas很多操作不会修改原来的值,要去接收

    2. 数据离散化

    连续属性的离散化就是将连续属性的值域上,将值域划分为若干个离散的区间,最后用不同的符号或整数值代表落在每个子区间中的属性值。

    • pd.qcut()
      对数据进行分组,一般与value_counts搭配使用,统计每组个数
    • series.value_counts() 统计分组次数
    datad = pd.qcut(data['gupiao1'],19)
    datad.value_counts()
    
    • pd.cut(data['gupiao1'],bins)
      可以用bins自定义分组区间
    • pd.get_dummies(data['gupiao1'], prefix = "rise")
      变成哑变量矩阵

    3. 合并

    • pd.concat([data1, data2], axis=1)
      按照行进行合并(axis=0,按照列进行合并)
    • pd.merge(left, right, how="inner", on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=True, suffixes=(),copy=True, indicator=False, validate=None)
      可以指定按照两组数据的共同建值对合并或者左右各自
    • pd.join() 与merge相似

    4. 交叉表与透视表

    • pd.crosstab(value1, value2)
      计算两列之间的关系
    • pd.pivot_table([], index=[])
      通过透视表,将整个过程变得简单一些

    5. 分组与聚合

    • DataFrame.groupby(key, as_index = False)
      key: 分组的列数据,可以多个
      as_index:指定不去改变原来数据的结构
    Starbucks.groupby("Country").count()['Brand'].plot(kind='bar')
    

    相关文章

      网友评论

          本文标题:Pandas4——Pandas高级处理

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