我有以下数据框 sheet1
Id Snack Price
5 Orange 55
7 Apple 53
8 Muskmelon 33
我还有另一个数据框替换
Snack Cat
Orange a
Apple b
Muskmelon c
要用其他列值替换列值,这是代码
sheet1 ['snack'] = sheet1 ['snack']。map(replace.set_index('Snack')['Cat'])
所以我将在上面的代码之后得到它。
Id Snack Price
5 a 55
7 b 53
8 c 33
如何对文件夹中存在的所有csv表执行相同的操作。
输入:https://www.dropbox.com/sh/1mbgjtrr6t069w1/AADC3ZrRZf33QBil63m1mxz_a?dl=0
输出:用文件夹中所有文件的替换数据框目录值替换零食栏工作表值。
答案 0 :(得分:2)
我相信您需要Makefile
来获取文件列表,然后循环并创建DataFrame,map
并最后保存回去:
import glob
s = replace.set_index('Snack')['Cat']
for file in glob.glob('files/*.csv'):
#df = pd.read_csv(file)
df['Snack'] = df['Snack'].map(s)
df.to_csv(f'{file}', index=False)