我有两个csv文件读入2个数据帧:
df1:
Aend Bend
A B
C D
df2
node_name Alarm
A alarm1
D alarm2
列表= [“ NTP”,“ LOS”]
如果列Aend或Bend与df2中的node_name匹配,我想检查df1中的row1。如果是,请从df2中获取相应的行,并必须检查条件
`df2 [Alarm]包含列表中的任何值:
print "YES"
其他:
print "NO"
类似地检查row2。 最好的方法是什么。
答案 0 :(得分:0)
您似乎要解决两个问题:
jar cvf /path/to/node/cordapps/MyCordapp-migration.jar migration
中的匹配df2
过滤node_name
。df1
是否在输入列表中,向df2
添加新列。对于第一部分,您可以构造范围内的值列表并使用Alarm
:
pd.Series.isin
对于第二部分,您可以使用# combine A_end and B_end values
vals = df1.values.ravel()
# filter df2
df2 = df2[df2['node_name'].isin(vals)]
根据条件创建新系列:
numpy.where