相关疑难解决方法(0)

大熊猫能自动识别日期吗?

今天,我对以下事实感到非常惊讶:从数据文件中读取数据(例如)pandas能够识别值的类型:

df = pandas.read_csv('test.dat', delimiter=r"\s+", names=['col1','col2','col3'])
Run Code Online (Sandbox Code Playgroud)

例如,可以通过以下方式检查:

for i, r in df.iterrows():
    print type(r['col1']), type(r['col2']), type(r['col3'])
Run Code Online (Sandbox Code Playgroud)

特别是整数,浮点数和字符串被正确识别.但是,我有一个列具有以下格式的日期:2013-6-4.这些日期被识别为字符串(而不是python日期对象).有没有办法"学习"大熊猫到公认的日期?

python types date dataframe pandas

127
推荐指数
7
解决办法
16万
查看次数

在 Pandas DataFrame 中存储纯 python datetime.datetime

由于matplotlib不支持任何pandas.TimeStamp 或者numpy.datetime64,有没有简单的解决办法,我决定到本地大熊猫日期列转换为纯Python datetime.datetime,这样散点图更容易做出。

然而:

t = pd.DataFrame({'date': [pd.to_datetime('2012-12-31')]})
t.dtypes # date    datetime64[ns], as expected
pure_python_datetime_array = t.date.dt.to_pydatetime() # works fine
t['date'] = pure_python_datetime_array # doesn't do what I hoped
t.dtypes # date    datetime64[ns] as before, no luck changing it
Run Code Online (Sandbox Code Playgroud)

我猜大熊猫自动转换纯Pythondatetime所生产to_pydatetime到其原生格式。我想这通常是方便的行为,但有没有办法覆盖它?

python datetime python-3.x pandas

6
推荐指数
1
解决办法
6364
查看次数

标签 统计

pandas ×2

python ×2

dataframe ×1

date ×1

datetime ×1

python-3.x ×1

types ×1