У меня есть скрипт, который генерирует файлы CSV и называет их в соответствии с отметкой времени

-rw-rw-r-- 1 9949 Oct 13 11:57 2018-10-13-11:57:10.796516.csv
-rw-rw-r-- 1 9649 Oct 13 12:58 2018-10-13-12:58:12.907835.csv
-rw-rw-r-- 1 9649 Oct 13 13:58 2018-10-13-13:58:10.502635.csv

Мне нужно выбрать столбец C из этих листов и записать в новый файл CSV. Однако порядок столбцов на новом листе должен соответствовать имени существующих листов. Например, столбец C из файла, созданного в 11:57, должен находиться в столбце A, с 12:58 в столбце B и 13:38 в столбце C нового листа.

РЕДАКТИРОВАТЬ - Код пробовал на основе Bilal Input. Он перемещает столбец C со всех существующих листов на новый лист, но не в правильном порядке. Он просто выбирает их случайным образом и продолжает добавлять столбцы в новый файл.

import os
import re
import pandas as pd

newCSV = pd.DataFrame.from_dict({})

# get a list of your csv files and put them files

files = [f for f in os.listdir('.') if os.path.isfile(f)]

results = []
for f in files:
    if re.search('.csv', f):
        results += [f]

for file in results:
    df = pd.read_csv(file,usecols=[2])

    newCSV = pd.concat((newCSV, df), axis=1)

newCSV.to_csv("new.csv")

РЕДАКТИРОВАТЬ - Окончательный код, который сработал, спасибо Билал

import os
import re
import pandas as pd



newCSV = pd.DataFrame.from_dict({})

files = [f for f in os.listdir('.') if os.path.isfile(f)]

# get a list of your csv files and put them files
results = []
for f in files:
        if re.search('.csv', f):
                results += [f]
result1=sorted(results)
for file in result1:
    df = pd.read_csv(file,usecols=[2])

    newCSV = pd.concat((newCSV, df), axis=1)

newCSV.to_csv("new.csv") 
0
Zoro99 14 Окт 2018 в 15:52

1 ответ

Лучший ответ
import pandas as pd

newCSV = pd.DataFrame.from_dict({})

# get a list of your csv files and put them files

for f in files:
    df = pd.read_csv(f)

    newCSV = pd.concat((newCSV, df.colum_name), axis=1)

newCSV.to_csv("new.csv") 

Посмотрите, работает ли это для вас.

Если вы не знаете, как найти все файлы с определенным расширением, посмотрите здесь.

0
Bilal Saleem 14 Окт 2018 в 14:35