series de tiempo nacidas del marco de datos de pandas
Estoy luchando con lo que parece ser un problema muy fácil: cómo hacer que Seaborn trace un gráfico de líneas de series de tiempo desde un marco de datos de pandas. ¿Qué estoy haciendo mal aquí?
import seaborn as sns
import pandas as pd
df=pd.DataFrame({"Date":["2015-03-03","2015-03-02","2015-03-01"],"Close":[1,3,2]})
df["Date"]=pd.to_datetime(df["Date"])#Not sure if seaborn can parse strings as dates
sns.tsplot(data=df,unit=None, time="Date", value="Close")
Me sale este rastreo:
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-306-20e252f661c2> in <module>()
1 df=pd.DataFrame({"Date":["2015-03-03","2015-03-02","2015-03-01"],"Close":[1,3,2]})
2 df["Date"]=pd.to_datetime(df["Date"])
----> 3 sns.tsplot(data=df,unit=None, time="Date", value="Close")
C:\Anaconda\lib\site-packages\seaborn\timeseries.pyc in tsplot(data, time, unit, condition, value, err_style, ci, interpolate, color, estimator, n_boot, err_palette, err_kws, legend, ax, **kwargs)
275 for c, (cond, df_c) in enumerate(data.groupby(condition, sort=False)):
276
--> 277 df_c = df_c.pivot(unit, time, value)
278 x = df_c.columns.values.astype(np.float)
279
C:\Anaconda\lib\site-packages\pandas\core\frame.pyc in pivot(self, index, columns, values)
3507 """
3508 from pandas.core.reshape import pivot
-> 3509 return pivot(self, index=index, columns=columns, values=values)
3510
3511 def stack(self, level=-1, dropna=True):
C:\Anaconda\lib\site-packages\pandas\core\reshape.pyc in pivot(self, index, columns, values)
324 else:
325 indexed = Series(self[values].values,
--> 326 index=MultiIndex.from_arrays([self[index],
327 self[columns]]))
328 return indexed.unstack(columns)
C:\Anaconda\lib\site-packages\pandas\core\frame.pyc in __getitem__(self, key)
1795 return self._getitem_multilevel(key)
1796 else:
-> 1797 return self._getitem_column(key)
1798
1799 def _getitem_column(self, key):
C:\Anaconda\lib\site-packages\pandas\core\frame.pyc in _getitem_column(self, key)
1802 # get column
1803 if self.columns.is_unique:
-> 1804 return self._get_item_cache(key)
1805
1806 # duplicate columns & possible reduce dimensionaility
C:\Anaconda\lib\site-packages\pandas\core\generic.pyc in _get_item_cache(self, item)
1082 res = cache.get(item)
1083 if res is None:
-> 1084 values = self._data.get(item)
1085 res = self._box_item_values(item, values)
1086 cache[item] = res
C:\Anaconda\lib\site-packages\pandas\core\internals.pyc in get(self, item, fastpath)
2858 loc = indexer.item()
2859 else:
-> 2860 raise ValueError("cannot label index with a null key")
2861
2862 return self.iget(loc, fastpath=fastpath)
ValueError: cannot label index with a null key
Desafortunadamente, no he encontrado ninguna respuesta en la documentación.