加载如下所示的csv文件时

0 1 male 3 4 5 6
1 0 female 6 7 8 9
.....


是否可以自动将第三列转换为整数,例如0表示男性,1表示女性?

最佳答案

read_csv接受名为converters的参数。当读入文件时,可以使用此函数将功能应用于特定列。converters应该作为以下形式的字典传递:

{column_index: function_to_apply}


您可以使用此功能将功能应用于第三列。您所需要做的就是将函数设置为从字典d获取值,该字典将"male"映射到0,将"female"映射到1

>>> d = {"male": 0, "female": 1}
>>> pd.read_csv(file.csv, converters={2: d.get})
...
0 1 0 3 4 5 6
1 0 1 6 7 8 9
...

关于python - Pandas 的分类变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27236599/

10-12 20:04