Das mag eine etwas wahnsinnige Frage sein ... Ich habe einen einzigen Pandas DF von Artikeln, die ich dann in mehrere DFs aufgeteilt habe, also nur DF enthält die Artikel eines bestimmten Jahres. Ich habe diese Variablen dann in eine Liste namens box_of_years
eingetragen.Iterieren durch eine Liste von Pandas DFs, um dann durch jede DF-Zeile zu iterieren
indexed_df = article_db.set_index('date')
indexed_df = indexed_df.sort_index()
year_2004 = indexed_df.truncate(before='2004-01-01', after='2004-12-31')
year_2005 = indexed_df.truncate(before='2005-01-01', after='2005-12-31')
year_2006 = indexed_df.truncate(before='2006-01-01', after='2006-12-31')
year_2007 = indexed_df.truncate(before='2007-01-01', after='2007-12-31')
year_2008 = indexed_df.truncate(before='2008-01-01', after='2008-12-31')
year_2009 = indexed_df.truncate(before='2009-01-01', after='2009-12-31')
year_2010 = indexed_df.truncate(before='2010-01-01', after='2010-12-31')
year_2011 = indexed_df.truncate(before='2011-01-01', after='2011-12-31')
year_2012 = indexed_df.truncate(before='2012-01-01', after='2012-12-31')
year_2013 = indexed_df.truncate(before='2013-01-01', after='2013-12-31')
year_2014 = indexed_df.truncate(before='2014-01-01', after='2014-12-31')
year_2015 = indexed_df.truncate(before='2015-01-01', after='2015-12-31')
year_2016 = indexed_df.truncate(before='2016-01-01', after='2016-12-31')
box_of_years = [year_2004, year_2005, year_2006, year_2007,
year_2008, year_2009, year_2010, year_2011,
year_2012, year_2013, year_2014, year_2015,
year_2016]
Ich habe verschiedene Funktionen geschrieben tokenize, aufzuräumen und die Token in ein FreqDist
Objekt zu konvertieren und wickelte diese in einer einzigen Funktion year_prep()
aufgerufen. Das funktioniert gut, wenn ich
year_2006 = year_prep(year_2006)
tun ... aber gibt es eine Weise, die ich in jedem Jahr variable laufen kann, gelte die Funktion und haben sie die gleiche Variable umwandeln, kurz nur für jedes Jahr, das oben zu wiederholen?
Ich weiß, mich zu wiederholen wäre der einfachste Weg, aber nicht unbedingt der sauberste. Vielleicht habe ich das rückwärts und mache später das Schneiden, aber an diesem Punkt habe ich das Gefühl, dass die Schichten von Listen außer Kontrolle geraten werden, wenn ich von einer Liste von Jahren zu einer Liste von Jahren gehe, die eine Liste von Artikeln enthalten. enthält eine Liste aller Wörter im Artikel.
ich diesen 'def f So verwendet (x): print (x)' ' gruppiert = df.groupby (df [ "date"] dt.year) ' ' gruppiert ['clean_text']. apply (f) 'und es funktionierte, den Inhalt der Spalte 'clean_text' in einer gruppierten Liste auszudrucken, so dass es in der Theorie gut aussieht. Jetzt muss ich nur herausfinden, wie Sie bestimmte Gruppen aufrufen, zum Beispiel, wenn ich das Ergebnis der Häufigkeitszählung nur für das Jahr 2008 plotten wollte. –
Und wie es funktioniert? – jezrael
so im Grunde habe ich jetzt meine gruppierte Datenbank, wie zeige ich nur auf die Gruppe 2008? –