У меня есть папка с CSV-файлами с таблицами в них.
Я подтвердил, что мне нужна моя сводная функция, и мне нужен следующий код:
cols = df.columns.difference(['FieldTitle','Value']).tolist()
pivoted_df = pd.pivot_table(df.fillna('missing'), index=cols, columns='FieldTitle', values='Value', aggfunc='first').reset_index().replace('missing', np.nan)
Как применить эти две строки кода к каждому файлу в папке при написании pivoted_df
в другую папку?
Я попробовал этот код, но я не могу заставить панд прочитать файл для выполнения манипуляции:
import os
import pandas as pd
import numpy as np
directory = os.path.join('~/Desktop/folder_path')
for root,dirs,files in os.walk(directory):
for file in files:
if file.endswith(".csv"):
f=open(file, 'r')
for i in f:
df = pd.read_csv(i)
cols = df.columns.difference(['FieldTitle','Value']).tolist()
pivoted_df = pd.pivot_table(df.fillna('missing'), index=cols, \
columns='FieldTitle', values='Value', \
aggfunc='first').\
reset_index().replace('missing', np.nan)
pivoted_df.to_csv('~/Desktop/folder_path/file_name_{}'.format(file))
f.close()