Tworzenie DataFrame z Series ze zmienioną nazwą kolumny

Tworzenie DataFrame z Series ze zmienioną nazwą kolumny
Julian_
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1703
0

Takie coś:

Kopiuj
s = pd.Series(range(10, 14), range(4))
pd.DataFrame(s, columns=["colname"])

działa ładnie. Ale takie coś:

Kopiuj
df = pd.DataFrame(inflation, columns=["inflation"])
print(df)

Empty DataFrame
Columns: [inflation]
Index: []

już nie. inflation jest ciężkie w zreprodukowaniu, bo pochodzi z excela po wielu przekształceniach, ale tyle wiemy:

Kopiuj
print(type(inflation))

<class 'pandas.core.series.Series'>

Kopiuj
print(inflation)

2012 0.0000
2013 0.0000
2014 0.0000
2015 0.0000
2016 0.0000
2017 0.0000
2018 0.0000
Name: INFLATION_EUR, dtype: float64

Ktoś ma pomysł o co może chodzić?

Pyxis
  • Rejestracja: dni
  • Ostatnio: dni
0

Obiekt jest pusty, bo opcjonalny argument columns służy do tego, aby wykorzystać parametry tej opcji do stworzenia obiektu typu DataFrame. Ponieważ nie ma w Twoim szeregu kolumny o nazwie inflation, to wynikiem jest pusty DataFrame. Podsumowując, najpierw stwórz obiekt, a potem zmień nazwę kolumny:

Kopiuj
df = pd.DataFrame(inflation)
df.columns = ["inflation"]
Julian_
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 1703
0
Pyxis napisał(a):

Obiekt jest pusty, bo opcjonalny argument columns służy do tego, aby wykorzystać parametry tej opcji do stworzenia obiektu typu DataFrame. Ponieważ nie ma w Twoim szeregu kolumny o nazwie inflation, to wynikiem jest pusty DataFrame. Podsumowując, najpierw stwórz obiekt, a potem zmień nazwę kolumny:

Kopiuj
df = pd.DataFrame(inflation)
df.columns = ["inflation"]

a w tym szeregu

Kopiuj
s = pd.Series(range(10, 14), range(4))

też nie ma kolumny o nazwie colname a jednak tworzy niepusty DataFrame:

Kopiuj
pd.DataFrame(s, columns=["colname"])
Pyxis
  • Rejestracja: dni
  • Ostatnio: dni
2

W przypadku zmiennej inflation miałeś już nadaną nazwę INFLATION_EUR. Nadaj szeregowi s nazwę i się przekonasz, że dostaniesz pusty DataFrame.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.