我试图遍历一个大数据帧。但是,我不知道如何包含一些条件。以下是我的数据帧示例:
0 1 2 3
0 chr3R 4174822 4174922 1.0
1 chr3R 4175400 4175500 0.0
2 chr3R 4175466 4175566 0.5
3 chr3R 4175521 4175621 1.0
4 chr3R 4175603 4175703 0.0
我想遍历这些行,找到x行第1列与第1行第1列的差值小于5000的行。如果x行与第1行之间的差小于5000,则选择第3列中x到1行的值以放入列表中。然后我想在整个数据帧中迭代这个条件,并为第3列的值创建一个列表。在
我尝试使用iterrows(),但我只是浏览了整个数据帧,什么也没有得到。在
谢谢。在
罗德里戈
这可以不使用iterrows来完成。所有这些都可以。另一种方法是使用np.哪里从包纽比。这是一个例子。根据您的要求修改。在
df.iloc[:, 1]
选择第1列中的所有行,用df.iat[1, 1]
减去第一行和第一列的值,然后过滤小于5000的值。在最后的
[3]
选择第三列(它将返回一个序列)。但是,由于需要一个列表,所以只需将.tolist()附加到结果中。在让我们以您的数据集为例,再添加一些行。在
添加最后两行是为了显示列1比4174822(列1的第一个值)高5000多的行示例
您可以过滤掉第一个值4174822的5000以内的值,如下所示:
^{pr2}$。。。然后使用
.iterrows()
进行迭代。在相关问题 更多 >
编程相关推荐