Pandas 不能在多索引中使用日期时间
Pandas cannot use datetime in multiindex
我花了很多时间尝试将数据插入 pandas' DataFrame
但就是不能如我所料。
有两个索引:
1. current_time
2. company_name
我用data.ix[]插入一行后,
Dataframe 创建另一列(由 company_name 命名)
任何人都可以给我一些建议吗?
import pandas
data=pandas.DataFrame(columns=['Date', 'Name', 'd1'])
data.set_index(['Date', 'Name'], inplace=True)
now = pandas.datetime.now()
data.ix[now, 'ACompany'] = [1]
要让 pandas 知道 now, 'ACompany'
是索引的级别,您必须使用一些额外的括号:
data.ix[(now, 'ACompany'), :] = 1
只需执行 data.ix[now, 'ACompany']
,pandas 将默认尝试将其解释为 index=now, column='ACompany'(在 .ix[rows, columns]
的意义上)
此外,如果您只想通过标签进行索引,建议使用 .loc
而不是 .ix
。
我花了很多时间尝试将数据插入 pandas' DataFrame
但就是不能如我所料。
有两个索引:
1. current_time
2. company_name
我用data.ix[]插入一行后,
Dataframe 创建另一列(由 company_name 命名)
任何人都可以给我一些建议吗?
import pandas
data=pandas.DataFrame(columns=['Date', 'Name', 'd1'])
data.set_index(['Date', 'Name'], inplace=True)
now = pandas.datetime.now()
data.ix[now, 'ACompany'] = [1]
要让 pandas 知道 now, 'ACompany'
是索引的级别,您必须使用一些额外的括号:
data.ix[(now, 'ACompany'), :] = 1
只需执行 data.ix[now, 'ACompany']
,pandas 将默认尝试将其解释为 index=now, column='ACompany'(在 .ix[rows, columns]
的意义上)
此外,如果您只想通过标签进行索引,建议使用 .loc
而不是 .ix
。