当前位置: 首页 > 知识库问答 >
问题:

获取索引前 n 天的行子集 [重复]

凤扬
2023-03-14

我有一组符合条件的指数:

for col in signal.columns:
    for sign in signs:
        index = signal.index[signal[col] == sign].tolist()
        for i in index:

此时,我想提前 i 到 i n 天查看此列的值范围(其中 n 是整数);像这样:

            print(signal[col].iloc[i:i + n])

但是,我不能把int数加到日期I上:

TypeError: unsupported operand type(s) for +: 'datetime.date' and 'int'

共有2个答案

后源
2023-03-14

iloc()主要查看一行('i'部分),其中. loc()将为您提供一个切片。请参见此处的iloc()文档:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.iloc.html

你应该能够使用你的代码。loc而不是iloc,或者只是一个切片。但是请注意返回内容的细微差别。我的示例中有一个名为“Open”的列。

i=10
n=5
col = 'Open'


In [38]: print(df[col].loc[i])
1.1778571

In [39]: print(df[col].loc[i:i+n])
10   1.178
11   1.135
12   1.156
13   1.154
14   1.104
15   1.082
Name: Open, dtype: float64

In [40]: print(df[col][i:i+n]) #one less row than inlcuding .loc()
10   1.178
11   1.135
12   1.156
13   1.154
14   1.104
Name: Open, dtype: float64
邢和光
2023-03-14

您必须使用< code > date util . relative delta lib来计算您的日期并使用< code >。loc[date]您将能够找到您的行数据。

 类似资料:
  • 鉴于此示例: 我想得到那些索引,其中col1: 预期结果将是一个向量。

  • 问题内容: 我是numpy的新手,并且正在python中使用随机森林实现集群。我的问题是: 如何找到数组中确切行的索引?例如 我寻找并得到结果1(第二行的索引)。 有什么建议吗?遵循代码(不起作用…) 问题答案: 为什么不简单地做这样的事情?

  • 当我试图找到这个答案时,我可能使用了糟糕的搜索词。现在,在索引DataFrame之前,我以这种方式在列中获得一个值列表... …然后我将在列上设置索引。这似乎是浪费的一步。在索引上尝试上述操作时,我得到一个键错误。 如何获取索引中的值(单个和多个)并将其放入列表或元组列表中?

  • 问题内容: 我有一个QuerySet,让我们称之为,它是由与该问题无关的某些属性排序的。然后有一个对象,我们称它为。现在,我想尽可能 高效 地知道in中的索引。我知道我可以在Python中使用它,也可以通过将每个对象与进行比较来循环,但是执行此操作的最佳方法是什么?我正在寻找高性能,这是我唯一的标准。 __ 在Windows上将Python 2.6.2与Django 1.0.2结合使用。 问题答案

  • 问题内容: 我有N维向量数组。 我正在使用sklearn的函数来计算距离值矩阵。注意,该矩阵关于对角线对称。 我需要与该矩阵中前N个值相对应的索引,因为这些索引将与成对索引相对应,它们代表了向量之间的最大距离。 我尝试做以获得每一行中最大值的索引,并获取每一列中最大值的索引,但是请注意: 和: 因为矩阵是关于对角线对称的,并且因为argmax返回它找到的具有最大值的第一个索引,所以我最终在行和列匹

  • 问题内容: 如何从JTable索引获取行?我查看了成员函数,但没有类似getRowAt的东西。有人可以帮忙吗? 问题答案: 表没有“行”对象,因此使用getRow方法无法获得任何结果。 您可以要求获取各个值,将其用于每一列,然后获得完整的行。