【问题标题】:How to create a customized dataframe with certain values as columns in pandas (Python3)?如何在熊猫(Python3)中创建具有某些值的自定义数据框作为列?
【发布时间】:2020-10-03 13:49:31
【问题描述】:

希望我能以足够简洁的方式来写这篇文章,让我的问题得到解决。

假设我通过 read_csv() 连接到 Python 中的 csv。数据框看起来像这样:

ID | Has kids? | Purchases

1  |     Y     |   23
2  |     N     |   17
3  |     Y     |   28
4  |     N     |   11

所以我希望能够在有孩子的人 (Y) 和没有孩子的人 (N) 的购买之间进行简单的独立 t 检验,看看购买之间是否存在差异。

如何从中自定义一个新的数据框,使其具有 3 列:ID、“Y”和“N”,它们的行值是每个给定 ID 的购买?

最终我想利用 scipy 的 stats 库并使用 stats.ttest_ind() 方法,然后将 Y 和 N 列通过那里得到结果。

任何建议将不胜感激!

【问题讨论】:

    标签: python dataframe scipy statistics pivot-table


    【解决方案1】:

    使用数据框方法pivot():

    import pandas as pd
    
    data = {
        "ID": [1, 2, 3, 4],
        "Has kids?": ['Y', 'N', 'Y', 'N'],
        "Purchases": [23, 17, 28, 11],
    }
    
    df = pd.DataFrame(data)
    df = df.set_index('ID')
    
    df.pivot(index=None, columns="Has kids?", values="Purchases")
    
    >>> Has kids?     N     Y
        ID                   
        1           NaN  23.0
        2          17.0   NaN
        3           NaN  28.0
        4          11.0   NaN
    

    【讨论】:

      猜你喜欢
      • 2023-03-14
      • 2016-07-30
      • 1970-01-01
      • 2019-09-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-12
      • 2017-07-15
      相关资源
      最近更新 更多