CSV-файл, текст в столбец с помощью Panda - PullRequest
0 голосов
/ 06 декабря 2018
def Text2Col(df_File):
    for i in range(0,len(df_File)):  
        with open(df_File.iloc[i]['Input']) as inf:
            with open(df_File.iloc[i]['Output'], 'w') as outf:
                i=0
                for line in inf:
                    i=i+1
                    if i==2 or i==3:
                        continue
                    outf.write(','.join(line.split(';')))

Приведенный выше код используется для преобразования файла CSV из текста в столбец.Этот код делает все значения строки (потому что split ()), что проблематично для меня.Я пытался использовать функцию карты, но не могу сделать это.

Есть ли другой способ, которым я могу сделать это.

Мой входной файл имеет 5 столбцов, первый столбец является строкой, второй являетсяint, а остальные - float.

Я думаю, что в последнем утверждении потребовалось внести некоторые изменения

  outf.write(','.join(line.split(';')))

Пожалуйста, дайте мне знать, если требуется какой-либо другой ввод.

Ответы [ 2 ]

0 голосов
/ 07 декабря 2018

Спасибо!

Сработал следующий код:

def Text2Col(df_File):
    for i in range(0,len(df_File)):  
        df = pd.read_csv(df_File.iloc[i]['Input'],sep=';')
        df = df[df.index != 0]
        df= df[df.index != 1]
        df.to_csv(df_File.iloc[i]['Output']) 



File_List="File_List.csv"
df_File=pd.read_csv(File_List)
Text2Col(df_File)

Входные файлы хранятся в той же папке с тем же именем, как указано в File_List.xls. Выходные файлы будут создаваться в той же папке сразделены в столбце.Я удалил строки 0 и 1 для моего использования.Можно пропустить или добавить в зависимости от его требования.В приведенном выше коде df_file представляет собой dataframe, содержащий список из двух столбцов, первый столбец - имя входного файла, а второй столбец - имя выходного файла.

0 голосов
/ 06 декабря 2018

Хорошо, пытаюсь помочь здесь.Если это не работает, пожалуйста, укажите в своем вопросе, что вам не хватает или что еще нужно сделать:

Используйте панд для чтения в CSV-файле :

import pandas as pd
df = pd.read_csv('your_file.csv')

Если у вас есть заголовок в первой строке, используйте:

import pandas as pd
df = pd.read_csv('your_file.csv', header=0)

Если у вас есть разделитель табуляции вместо запятой, используйте:

import pandas as pd
df = pd.read_csv('your_file.csv', header=0, sep='\t')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...