我本质上想这样做
mrgd.query('security == security and comnam == comnam')
Run Code Online (Sandbox Code Playgroud)
但这总是错误的。
或者我想也许我可以做
mrgd.eval('security == security') & mrgd.eval(comnam == comnam')
Run Code Online (Sandbox Code Playgroud)
但这行不通。
mrgd['security'].notnull() == mrgd['comnam'].notnull()
Run Code Online (Sandbox Code Playgroud)
我想我可以做到这一点
mrgd[['security','comnam']].notnull()
Run Code Online (Sandbox Code Playgroud)
然后将生成的两列相加以获得一个整数(2 表示成功),但是执行此操作的常规方法是什么?我发现了与此类似的问题,但不完全相同。
我认为你可以这样做:
import pandas as pd
df = pd.DataFrame(
[[None, None],
[3, None],
[None, 2],
[2, 3]],
columns=['security', 'comnam',],
)
df[df['security'].notnull() & df['comnam'].notnull()]
Run Code Online (Sandbox Code Playgroud)
结果是:
security comnam
3 2.0 3.0
Run Code Online (Sandbox Code Playgroud)
我努力了:
df.query('security == security and comnam == comnam')
Run Code Online (Sandbox Code Playgroud)
结果是一样的。
| 归档时间: |
|
| 查看次数: |
6593 次 |
| 最近记录: |