У меня есть много CSV файлов (по одному на каждую неделю), которые содержат данные, выглядящие так:Списки в DataFrame для панд
Rank;Artist;Track;Label;Audience
1;Drake feat. WizKid & Kyla;One Dance;UNIVERSAL; 2001401
это Top плейлист 40 радио за одну неделю - У меня есть данные 3-х лет.
Я пытаюсь импортировать этот CSV-файл строки, разделенный ;
, добавить неделю года + год в начале, преобразовать его в список, а затем в Dataframe
, чтобы иметь возможность манипулировать ими впоследствии.
получить:
week;year;Rank;Artist;Track;Label;Audience
1;Drake feat. WizKid & Kyla;One Dance;UNIVERSAL; 2001401
Я хочу потом импортировать множество CSV файлов, добавьте все это в один большой файл CSV и быть в состоянии проверить мгновенно Top 40 в течение недели и искать потом все недель, когда определенный трек был плейлистом и ему удалось увидеть эволюцию аудитории в Matplotlib для одного трека.
Мне удалось импортировать CSV-файлы и составить списки, но я не могу помещать их в pandas как DataFrame
, чтобы увидеть кадр данных в течение недели.
Вот мой код:
import csv
import pandas as pd
import numpy as np
handle = open('virgin122016.csv','r')
results = []
for line in handle :
line = '12;2016;'+line
line = line.lower()
line = line.strip()
line = line.split(';')
line = line[0],line[1],line[2], line [3], line[4],line[5],line[6],line[7]
results.append(line)
df = pd.DataFrame(results)
print df
Результат:
IndentationError: unindent does not match any outer indentation level
Как бы вы рекомендовали работать на индексы/списки/DataFrames, и почему пристанет мой код?
Почему вы не просто использовать 'pandas.read_csv' вообще? Что касается ошибки, посмотрите на свои последние две строки, они не совпадают с уровнем отступов, так как * для * –
Отступы имеют значение в Python. Много. –