我有Pandas dataframe,想在df的特定列上替换很多值。在
如何在没有循环的情况下实现下面的代码?在
for i in range(len(data.loc[:, 'CityID'])):
if data.loc[:, 'CityID'][i] == 1:
data.loc[:, 'CityID'][i] = 1
elif data.loc[:, 'CityID'][i] in (2, 3, 4, 21):
data.loc[:, 'CityID'][i] = 2
elif data.loc[:, 'CityID'][i] in (33, 34):
data.loc[:, 'CityID'][i] = 4
else:
data.loc[:, 'CityID'][i] = 3
使用:
可以使用带^{} 的词典:
如果字典构造感觉很费劲,可以使用unpacking:
^{pr2}$相关问题 更多 >
编程相关推荐