我了解Pandas数据框类型具有测试其值逻辑的能力。
以下是代码:
import pandas as pd
data = pd.DataFrame(columns=['a', 'b', 'c'])
data = data.append({'a': 'I have data', 'b': 'no more complexe', 'c': 024204}, ignore_index=True)
data = data.append({'a': 'audoausd', 'b': '2048rafaf', 'c': 29313}, ignore_index=True)
data = data.append({'a': 'koplak ente gan', 'b': 'ente g bisa koplak', 'c': 29313}, ignore_index=True)
现在我们有以下数据框:
a b c
0 I have data no more complexe 10372
1 audoausd 2048rafaf 29313
2 koplak ente gan ente g bisa koplak 29313
测试列c的逻辑值并将其保存到变量中
c = data.c > 20000
将把c设置为以下值
0 False
1 True
2 True
Name: c, dtype: bool
测试列B的逻辑值并将其保存到一个变量中
b = data.b.str.contains('koplak')
b value
0 False
1 False
2 True
Name: b, dtype: bool
并且对于列a也是如此
a = data.a.str.contains('koplak')
一个值
0 False
1 False
2 True
Name: b, dtype: bool
当我通过执行a&b&c来比较所有这些值时,将返回:
0 False
1 False
2 True
dtype: bool
如果涉及多列,硬编码并不是一种好的方式,因此我尝试制作一个包含所有列逻辑的列表。
logic = [a, b, c]
如何自动比较所有项目以获得 A、B、C 的结果?
|
)时,我想到了sum(my_list_of_serieses).astype(bool)
。 - xjcl