Как заменить значение столбца dataframes для всех файлов csv в папке на значение другого столбца dataframe? - PullRequest
0 голосов
/ 17 октября 2018

У меня есть следующий фрейм данных sheet1

Id  Snack      Price   
5   Orange      55    
7   Apple       53    
8   Muskmelon   33 

У меня есть другой фрейм данных replace

 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

Вывод. Замените значения листа столбца Snack заменой значений cat dataframe для всех файлов в папке.

1 Ответ

0 голосов
/ 17 октября 2018

Я считаю, что вам нужно glob для списка файлов, затем зациклите и создайте 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)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...