gpt4 book ai didi

python - 数据框中最后一个元素的访问索引

转载 作者:IT老高 更新时间:2023-10-28 20:30:42 26 4
gpt4 key购买 nike

我一直在寻找这个,但我似乎找不到它(尽管它一定非常微不足道)。

我遇到的问题是我想为数据框的第一个和最后一个条目检索列的值。但如果我这样做:

df.ix[0]['date']

我明白了:

datetime.datetime(2011, 1, 10, 16, 0)

但如果我这样做:

df[-1:]['date']

我明白了:

myIndex
13 2011-12-20 16:00:00
Name: mydate

使用不同的格式。理想情况下,我希望能够访问数据框的最后一个索引的值,但我找不到方法。

我什至尝试使用索引值创建一个列 (IndexCopy) 并尝试:

df.ix[df.tail(1)['IndexCopy']]['mydate']

但这也会产生不同的格式(因为 df.tail(1)['IndexCopy'] 不输出简单的整数)。

有什么想法吗?

最佳答案

以前的答案现在被 .iloc 取代:

>>> df = pd.DataFrame({"date": range(10, 64, 8)})
>>> df.index += 17
>>> df
date
17 10
18 18
19 26
20 34
21 42
22 50
23 58
>>> df["date"].iloc[0]
10
>>> df["date"].iloc[-1]
58

我能想到的最短方法是使用 .iget():

>>> df = pd.DataFrame({"date": range(10, 64, 8)})
>>> df.index += 17
>>> df
date
17 10
18 18
19 26
20 34
21 42
22 50
23 58
>>> df['date'].iget(0)
10
>>> df['date'].iget(-1)
58

或者:

>>> df['date'][df.index[0]]
10
>>> df['date'][df.index[-1]]
58

还有.first_valid_index().last_valid_index(),不过要看你是否想排除NaNs他们可能不是你想要的。

请记住,df.ix[0] 不会给您第一个,而是由 0 索引的那个。例如,在上述情况下,df.ix[0] 会产生

>>> df.ix[0]
Traceback (most recent call last):
File "<ipython-input-489-494245247e87>", line 1, in <module>
df.ix[0]
[...]
KeyError: 0

关于python - 数据框中最后一个元素的访问索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15862034/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com