gpt4 book ai didi

python - Pandas Dataframe 标签选择

转载 作者:行者123 更新时间:2023-12-01 05:44:45 24 4
gpt4 key购买 nike

谁能告诉我为什么 df['2005-5-31'] 会触发 KeyError 异常?

rng = pd.date_range('2005', '2012', freq='M')
df = pd.DataFrame(randn(len(rng), 3), rng, ['X', 'Y', 'Z'])
df.head()

# works
df.ix['2005-5-31']
df['2005-5-31':'2005-5-31']

# Gives KeyError: u'no item named 2005-5-31'
df['2005-5-31']

使用 df['2000-01-01'] 跟踪代码有效。

#multiple rows on a single date
rng = pd.date_range('2000-01-01', '2000-01-3', freq='8H')
df = pd.DataFrame(randn(len(rng), 3), rng, ['X', 'Y', 'Z'])

# works
df['2000-01-01']

X Y Z
2000-01-01 00:00:00 -0.227981 1.927932 -0.518947
2000-01-01 08:00:00 0.486063 -1.255186 0.375075
2000-01-01 16:00:00 -2.313950 0.654384 1.111493

最佳答案

df['2005-5-31'] 返回名为:2005-5-31 的列。您的列名为 X、Y、Z。因为您没有日期列,所以它会给您一个错误!

现在 .ix[] 方法可以工作,因为它最多需要两个输入,第一个输入是行索引。您有一行带有索引 '2005-5-31' 所以它可以工作!

关于python - Pandas Dataframe 标签选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16447119/

24 4 0