Объединить csv в другую папку и подпапку (сделать общий код / ​​запустить в bashc - PullRequest
0 голосов
/ 26 мая 2020

Справочная информация: Я только начал изучать python, и первый код, который я пытаюсь воспроизвести, - это объединение csv из разных папок. Я использую spyder на anaconda. Я работаю над анализом изображений с помощью программы imageJ, каждый раз, когда я запускаю макрос, я получаю файл csv из каждого изображения, иногда эти csv не имеют одинакового имени. У меня есть основная папка с моим проектом и внутри нескольких папок с изображениями и файлами csv. Я хочу объединить эти файлы csv. Иногда у этих CSV-файлов нет того же заголовка в столбце, у других нет такого же имени файла.

Пожалуйста, посмотрите приведенный ниже код того, что у меня есть.

1) В этом коде я должен каждый раз вставлять путь к папке для анализа, но я хочу избежать копирования и вставки пути.

2) если CSV не имеет того же заголовка, Combined.csv дезорганизован

Другой результат: Я пытаюсь использовать Tkinter, но на моем ma c cra sh (я читал, что это проблема между anaconda и ma c )

Почему я хотел использовать Tkinter? Моя первоначальная идея заключалась в том, чтобы запустить код, который мог бы открыть окно с просьбой предоставить папку или каталог для анализа.

import sys
import os
import glob
import pandas as pd

print('enter the folder to chdir')
folder = input()
print(folder)
os.chdir(folder)
folder=sys.argv[0]
print(folder)
extension = 'csv'

all_filenames = [i for i in glob.glob('*.{:s}'.format(extension))] # un cambio menor de {} a {:s}
#combine all files in the list

combined_csv = pd.concat([pd.read_csv(f) for f in all_filenames ])
#export to csv
combined_csv.to_csv("combined_csv.csv", index=False, encoding='utf-8-sig')

Я изучаю больше, но я начал на этой неделе и хотел сразу же использовать код. Я тоже ищу похожий вопрос на форуме, но у меня не получалось заставить его работать.

Заранее благодарим за любую помощь. С уважением

...