Принятие Python CSV-файлов - PullRequest
0 голосов
/ 08 ноября 2019

Я пытаюсь ежедневно загружать данные CSV в Python. У меня есть разные файлы, такие как следующие для каждого дня. Мне нужна помощь в добавлении двух столбцов, где значения из столбцов взяты из имени файла, например, первый столбец должен принимать значение до '_', а второй столбец принимает часть датыиз имени файла.

  board_2019-08-08.csv
  sign_2019-08-08.csv
  Summary_2019-08-08.csv

Код:

path = "C:\xyz\Files\ETL\Dashboard"
all_files = glob.glob(os.path.join(path, "*.csv"))

for file in all_files: 
    file_name = os.path.splitext(os.path.basename(file))[0]
    dfn = pd.read_csv(file, skiprows = 17)
    dfn['Page'] = 'Dashboard'
    del dfn['Dimension']
    dfn = dfn.iloc[1:]
    dfn.columns = ['LoanId', 'Impressions', 'Page']

`

1 Ответ

0 голосов
/ 09 ноября 2019

Попробуйте это

path = "C:\xyz\Files\ETL\Dashboard"

files = list(filter(lambda x: '.csv' in x, os.listdir('path')))

for file in files:
    pre,post = file.split("_")
    post = post.split(".")[0] 

    dfn = pd.read_csv(f"{path}/{file}", skiprows = 17)

    # assume your inital values for column 0 and 1 is 1

    dfn.insert(0,"column1",value=pre)
    dfn.insert(1,"column2",value=post)

    // rest of your code
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...