Ich habe viele CSV-Dateien (eine für jede Woche), die wie die Suche Daten enthalten:Listen Datenrahmen für Pandas
Rank;Artist;Track;Label;Audience
1;Drake feat. WizKid & Kyla;One Dance;UNIVERSAL; 2001401
es ist ein Top 40 Radio Playlist Woche - ich habe 3 Jahre Daten.
Ich versuche, diese CSV-Datei der Zeichenfolge getrennt durch ;
die Woche des Jahres + das Jahr am Anfang hinzufügen, transformieren Sie es in eine Liste und dann zu einem Dataframe
, um sie anschließend zu manipulieren.
zu erhalten:
week;year;Rank;Artist;Track;Label;Audience
1;Drake feat. WizKid & Kyla;One Dance;UNIVERSAL; 2001401
Ich möchte danach viele CSV-Dateien, fügen Sie alle diese zu einem großen CSV-Datei und in der Lage zu überprüfen, sofort die Top 40 für eine Woche und suchen danach alle importieren Wochen, in denen ein bestimmter Titel wiedergabeliert wurde, und können die Entwicklung des Publikums in Matplotlib für einen Titel verfolgen.
Ich habe es geschafft, eine CSV-Dateien zu importieren und Listen zu erstellen, aber ich kann es nicht in Pandas als DataFrame
setzen, um den Datenrahmen für eine Woche zu sehen.
Hier ist mein Code:
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
Ergebnis:
IndentationError: unindent does not match any outer indentation level
Wie würden Sie empfehlen auf Indizes/lists/Datenrahmen zu arbeiten, und warum nervt mein Code?
Warum Sie nicht nur 'verwenden pandas.read_csv' zusammen? Soweit der Fehler geht, schauen Sie sich Ihre letzten zwei Zeilen an, sie sind nicht auf der gleichen Einrückungsebene wie die * für * –
Indentation Angelegenheiten in Python. Viel. –