s=python string 则s[1的值为_如果pandas数据框中的窗口观测值包含某个值,则可以有效地过滤它们...

我有一个pandas数据帧,它在第一次观察时为字符串的观察建立了索引。窗户大小不一。在这个例子中,我们可以说它们是4个观测值的链。我想知道,如果在窗口的任何地方有特定的观察值,如何最有效地消除某些值,知道如果第n个窗口以我要查找的值开头,我知道我可以去掉它,并且在它之前的三个窗口中也会包含相同的值。一个窗口可能包含我要筛选的值的多个实例。这是一些样本数据。从一系列简单的事件开始,ser:import pandas as pd

ser = pd.Series(['a','b','c','d','e','f','g','h','i','j','k'])

>>> ser

0 a

1 b

2 c

3 d

4 e

5 f

6 g

7 h

8 i

9 j

10 k

然后我将其转换为一个数据帧,其中每一行都是n个观察值的窗口。这里n==4。在

^{2}$

现在我想删除所有包含值“f”的行,例如:

期望输出0 1 2 3

0 a b c d

1 b c d e

6 g h i j

7 h i j k

8 i j k NaN

9 j k NaN NaN

10 k NaN NaN NaN

我希望避免搜索整个dataframe,因为它只包含第一列的重复内容,而且我的n值可能有点长。在本例中,如果知道以“c”、“d”、“e”和“f”开头的列都将在某处包含“f”,那么最好的方法是删除这些列。稍后,我将每行中的所有字符串合并为一个值,但在这一阶段,似乎更容易操作数据,因为所有内容都在不同的列中。这是在pandas 0.16.0中使用的,必须在python2.76和python3.4上运行。谢谢您!在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值