【问题标题】:How to convert the columns to numeric for removing the commas after reading a csv file? [duplicate]如何在读取 csv 文件后将列转换为数字以删除逗号? [复制]
【发布时间】:2020-01-31 07:30:12
【问题描述】:
df["Q28aa_1_1"]
30     2,330,000
31       2900000
32     2,550,000
33       2570000
34       2850000
35     1,000,000
36       2200000
37       2900000

以上是我拥有的数据框列的示例。

【问题讨论】:

    标签: python python-2.7


    【解决方案1】:

    您应该能够通过执行类似的操作来替换逗号并应用浮点数。

    import pandas as pd
    df = pd.DataFrame()
    df["Q28aa_1_1"] = ["2,330,000", "  2900000", "2,550,000", "  2570000", "  2850000", "1,000,000", "  2200000", "  2900000"]
    df["Q28aa_1_2"] = ["2,330,000", "  2900000", "2,550,000", "  2570000", "  2850000", "1,000,000", "  2200000", "  2900000"]
    df["Q28aa_1_3"] = ["2,330,000", "  2900000", "2,550,000", "  2570000", "  2850000", "1,000,000", "  2200000", "  2900000"]
    
    for column in ["Q28aa_1_1","Q28aa_1_2", "Q28aa_1_3"]:
        df[column] = df[column].str.replace(',','').apply(float)
    

    df.head() 的输出

       Q28aa_1_1  Q28aa_1_2  Q28aa_1_3
    0  2330000.0  2330000.0  2330000.0
    1  2900000.0  2900000.0  2900000.0
    2  2550000.0  2550000.0  2550000.0
    3  2570000.0  2570000.0  2570000.0
    4  2850000.0  2850000.0  2850000.0
    
    

    【讨论】:

    • 但我需要对数据框中所有未识别的列进行此操作
    • 修改了你应该能够传入列列表的代码并像这样进行
    猜你喜欢
    • 2021-12-27
    • 1970-01-01
    • 2021-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-13
    • 2018-04-01
    • 2018-01-02
    相关资源
    最近更新 更多