是否可以使用映射函数或其他更好的方法替换整个数据帧中的值?
我只知道如何在序列上执行映射。
我想用数字替换“tesst”和“set”列中的字符串 例如set=1,test=2
下面是我的数据集的一个例子:(原始数据集非常大)
ds_r
respondent brand engine country aware aware_2 aware_3 age tesst set
0 a volvo p swe 1 0 1 23 set set
1 b volvo None swe 0 0 1 45 set set
2 c bmw p us 0 0 1 56 test test
3 d bmw p us 0 1 1 43 test test
4 e bmw d germany 1 0 1 34 set set
5 f audi d germany 1 0 1 59 set set
6 g volvo d swe 1 0 0 65 test set
7 h audi d swe 1 0 0 78 test set
8 i volvo d us 1 1 1 32 set set
最终结果应该是
ds_r
respondent brand engine country aware aware_2 aware_3 age tesst set
0 a volvo p swe 1 0 1 23 1 1
1 b volvo None swe 0 0 1 45 1 1
2 c bmw p us 0 0 1 56 2 2
3 d bmw p us 0 1 1 43 2 2
4 e bmw d germany 1 0 1 34 1 1
5 f audi d germany 1 0 1 59 1 1
6 g volvo d swe 1 0 0 65 2 1
7 h audi d swe 1 0 0 78 2 1
8 i volvo d us 1 1 1 32 1 1
感谢您的建议
您可以使用
applymap
DataFrame函数来执行以下操作:我知道这是旧的,但补充那些搜索作为我。在此代码中用pandas和df创建数据帧
这将给你一个ip地址的字典地图,而不必写出来。
那^{} 呢?
正如@Jeff在评论中指出的那样,在pandas版本<;0.11.1中,手动将
.convert_objects()
附加到末尾以正确转换tess并设置为int64
列,以防在后续操作中出现问题。相关问题 更多 >
编程相关推荐