小编j.s*_*lin的帖子

使用 for 循环替换 pandas 列的每一行中的单元格值

请帮助我理解我的错误。我正在尝试更改.csv文件中的一列。我有.csv如下文件:

sku,name,code  
k1,aaa,886  
k2,bbb,898  
k3,ccc,342  
k4,ddd,503  
k5,eee,401  
Run Code Online (Sandbox Code Playgroud)

我想用“sku”列中的“_”符号替换“k”符号。
我写的代码:

import sys  
import pandas as pd  
import numpy as np  
import datetime  

df = pd.read_csv('cat0.csv')  

for r in df['sku']:  
    r1 = r.replace('k', '_')  
    df['sku'] = r1  

print (df) 
Run Code Online (Sandbox Code Playgroud)

但是代码在“sku”列的每一行中插入最后一个值。所以我得到:

  sku name  code
0  _5  aaa   886
1  _5  bbb   898
2  _5  ccc   342
3  _5  ddd   503
4  _5  eee   401
Run Code Online (Sandbox Code Playgroud)

我想得到如下:

  sku name  code
0  _1  aaa   886
1  _2  bbb   898
2  _3  ccc …
Run Code Online (Sandbox Code Playgroud)

python csv replace python-3.x pandas

5
推荐指数
2
解决办法
1万
查看次数

标签 统计

csv ×1

pandas ×1

python ×1

python-3.x ×1

replace ×1