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

为每个新索引选择数据帧

夹谷沛
2023-03-14

我正在寻找一种简单的方法来选择熊猫数据框df中的特定值。

我的df行如下所示:编辑以使其更清晰

('df_c',     index   edge_id   source   target       dist      length     offset        ep
0       0   3993733  2072680  3740467   7.400719   66.983482  50.293263  0.989106
1       0   9337850  3740467  2072680   7.400719   66.983482  16.690219  0.989106
2       0   3993735  3740467  3740468  18.257438   51.693102   0.000000  0.935507
3       0   3993736  3740467  3740470  18.257438   80.415746   0.000000  0.935507
4       0   9337852  3740468  3740467  18.257438   51.693102  51.693102  0.935507
5       0   9337853  3740470  3740467  18.257438   80.415746  80.415746  0.935507
6       0   4917163  5293212  5474940  50.474509  113.242490  47.964551  0.600775
7       0  10261280  5474940  5293212  50.474509  113.242490  65.277939  0.600775
8       1   3993733  2072680  3740467   8.627149   66.983482  56.266520  0.985225
9       1   9337850  3740467  2072680   8.627149   66.983482  10.716962  0.985225
10      1   3993735  3740467  3740468  10.319909   51.693102   9.098376  0.978925
11      1   9337852  3740468  3740467  10.319909   51.693102  42.594727  0.978925
12      1   3993736  3740467  3740470  13.757942   80.415746   0.000000  0.962851
13      1   9337853  3740470  3740467  13.757942   80.415746  80.415746  0.962851
14      1   4565277  2072680  2072681  56.667011   53.626811   5.403604  0.526118
15      1   9909394  2072681  2072680  56.667011   53.626811  48.223207  0.526118)

我的目标是选择每一行[1](df[索引])与一个新的索引。所以这是df.index0,8,以此类推...

是否有另一种可能的方法,而不是迭代整个df并检查行[1](df[索引])上的索引的更改?

我知道有一种方法可以像这样选择第n行:df.iloc[0::n,:]但是第[1]行上的索引更改(df[“index”])的顺序并不总是相同的。。。

共有1个答案

锺英彦
2023-03-14

您应该能够使用shift之类的工具提取一组行。差不多

df[(df.column1 - df.column1.shift(1)) >= 1]

似乎奏效了。请注意,移位通常与您想要进行的比较方向相反,因为您不是一个接一个地比较它们,而是创建向量的移位版本,然后一次比较整个向量。为了使当前值和以前的值对齐以比较它们,您必须向前移动向量以获得同一样本上的两个值。

 类似资料:
  • 我正在尝试从多索引数据帧中仅使用一个索引来创建新的数据帧。 理想情况下,我想要这样的东西: 和: 基本上,我想删除除level之外的多索引的所有其他索引。有没有一个简单的方法可以做到这一点?

  • 在本章中,我们将讨论如何对日期进行切片和切块,并且通常会获得pandas对象的子集。 Python和NumPy索引运算符“[]”和属性运算符“。” 可以在各种用例中快速轻松地访问Pandas数据结构。 但是,由于要访问的数据类型不是预先知道的,因此直接使用标准运算符会有一些优化限制。 对于生产代码,我们建议您利用本章中介绍的优化的pandas数据访问方法。 熊猫现在支持三种类型的多轴索引; 下表中

  • 是否有任何方法可以在数据框中按索引(即整数)选择行,按列名选择列? 我尝试使用loc,但它返回一个错误,我知道iloc只适用于索引。 这是数据帧df的第一行。我愿意选择第一行,名为“Volume”的列,并尝试使用df.loc[0,'Volume']

  • 问题内容: 我正在尝试仅使用来自多索引DataFrame的一个索引来创建新的DataFrame。 理想情况下,我想要这样的事情: 和: 本质上,我想删除除level之外的多索引的所有其他索引。是否有捷径可寻? 问题答案: 一种方法是简单地重新绑定到所需的MultiIndex级别。您可以通过指定要保留的标签名称来做到这一点: 或使用级别的整数值: MultiIndex的所有其他级别将在此处消失。

  • 问题内容: 假设我有一个会议实体。每个会议都有一个与会者和一个会议日期。在我的会议表中,我可能会为每个与会者召开多个会议,每个会议的日期都不同。我需要一个JPA查询,该查询将仅为所有与会者选择最新的会议。例如,如果我的桌子看起来像这样 我的结果应该是 针对postgres使用JPA 2。会议有1-1个出席者和一个简单的时间戳记日期。我怀疑我需要和max(blah)做一个小组,也许还需要加入我自己的

  • 基于单个值/标签的切片 基于一个或多个级别的多个标签的切片 布尔条件和表达式的过滤 哪些方法适用于什么情况 为简单起见的假设: 输入数据表没有重复的索引键 下面的输入数据只有两个级别。(此处所示的大多数解决方案都概括为N个级别) 问题2b 我如何获得级别“二”中对应于“t”和“w”的所有值? 如何从检索横截面,即具有索引特定值的单行?具体来说,如何检索的横截面,由 如何选择与和相对应的两行?