【问题标题】:Splitting pandas DataFrame conditionally in two groups将 pandas DataFrame 有条件地分成两组
【发布时间】:2021-08-28 13:43:39
【问题描述】:

我正在尝试根据该列最后一行中的值是否大于 0 将数据集分成两组。

举例说明:

Image

这让我可以将 1000 个客户分成两组。

pivot_data_credit = data.pivot_table(values='nr_credit_applications', index='yearmonth', columns=['client_nr'])

pivot_data_credit.loc[:,'Credit Total'] = pivot_data_credit.sum(axis=1)

pivot_data_credit.loc['TotalRow'] = pivot_data_credit.sum()

感谢您的帮助。

【问题讨论】:

    标签: python pandas dataframe group-by


    【解决方案1】:

    您可以在最后一行使用iloc 进行掩码,并使用带有loc 方法的掩码过滤列:

    positive_mask = pivot_data_credit.iloc[-1, :] > 0
    positive_clients = pivot_data_credit.loc[:, positive_mask]
    non_positive_clients = pivot_data_credit.loc[:, ~positive_mask]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-25
      • 1970-01-01
      • 2016-01-31
      • 2022-01-22
      • 1970-01-01
      • 2019-04-08
      • 2018-11-08
      • 1970-01-01
      相关资源
      最近更新 更多