我正在尝试更新数据框列中的名称。我想:
[中]
B17.31
107.34
34
B50.56
[外]
B17.31
B107.34
B34
B50.56
我使用的代码是:
for file in df1.loc[:, '#filename']:
new = str(file)
if new[0] != 'B':
final = new[:0] + 'B' + new[0:]
else:
final = new
print((final))
df1.replace(new, final)
print(df1['#filename'])
df1.to_csv('updated_name_data.csv')
我不明白为什么它会打印出更新的名称,但不会在数据框或csv中更新。如果您能提供任何帮助或向正确的方向指示,我们将不胜感激
这应该起作用:
您的目标应该是使用矢量化操作,而不是手动循环。例如,可以用
"B"
分隔数值和前缀:在pandas中,最好避免循环,因为速度慢,最好使用矢量化函数
因此,您可以通过^{} 创建布尔掩码,然后使用^{} 将
B
添加到原始列:另一种类似的溶液,通过
~
反转掩模:相关问题 更多 >
编程相关推荐