как убрать пробелы и лишние запятые между запятыми и заменить их на '' в csv на python - PullRequest
0 голосов
/ 22 октября 2018

Это мой CSV:

AAP,AAMC,AAPL,AMT

106.08999633789062,,,

,122.88999938964844,,

,,109.80000305175781,

,,,118.55000305175781

здесь моя вторая строка печатается на лестнице из-за всех символов ',' и новой строки. Как мне получить все данные в одном и том же отступе строки с помощью python?

Я пытался использовать функцию .replace, но она каждый раз требует жесткого кодирования. Есть ли способ найти шаблон так, чтобы:

так, чтобы ожидаемый результат был равен:

AAP,AAMC,AAPL,AMT
106.08999633789062,122.88999938964844,109.80000305175781,118.55000305175781

Ответы [ 3 ]

0 голосов
/ 22 октября 2018

Вот один из способов сделать это:

import pandas as pd

df = pd.read_csv('a.csv')
m = df.max()
print(list(m.keys())); print(list(m.values))
# => ['AAP', 'AAMC', 'AAPL', 'AMT']
# => [106.08999633789062, 122.88999938964844, 109.8000030517578, 118.5500030517578]
0 голосов
/ 22 октября 2018

Вы можете попробовать с приведенным ниже кодом:

import pandas as pd 
df=pd.read_csv("a.csv",delimeter=',',skipinitialspace=True,delim_whitespace=True)
print(list(df.keys()))
print(list(df.values()))
df.to_csv("b.csv",index=False)
0 голосов
/ 22 октября 2018

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

import csv
data = {}
with open('input.txt') as input_file:
    reader = csv.DictReader(input_file, delimiter=',')
    for row in reader:
        for key, value in row.items():
            if value:
                data[key] = value
with open('output.txt', 'w', newline='') as output_file:
    writer = csv.DictWriter(output_file, delimiter=',', fieldnames=data.keys())
    writer.writeheader()
    writer.writerow(data)

данные:

{'AAMC': '122.88999938964844',
 'AAP': '106.08999633789062',
 'AAPL': '109.80000305175781',
 'AMT': '118.55000305175781'}

Output.txt:

AAP,AAMC,AAPL,AMT
106.08999633789062,122.88999938964844,109.80000305175781,118.55000305175781
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...