繁体   English   中英

通过匹配Panda DataFrame在Panda DataFrame中查找匹配项

[英]Finding matches in Panda DataFrame by matching a Panda DataFrame

尝试返回一个数组的行,其中一列与另一个数组的值匹配。

我从elm值开始,并根据搜索df表调用nearby函数在elm nearby查找其他elms。 函数返回如下结果(所有int):

    C1    C2    C3    C4
0  100    20    11     1

因此,我需要从满足两个条件的elm_data_table中提取信息:

1) LC-col列中的值与LC值匹配

2) ELM列中的值必须与other_elm中的4个值other_elm

我正在尝试从elm_data_table 4行数据,因为我正在尝试查找4个值的数据

有小费吗?

import panda as pd

#df and elm_data_table are Panda dataframes

def nearby(elm, df):
    return df[df['ELM'] == elm].iloc[:,5:9]

elm = 1000
LC = 200

other_elm = nearby(elm, df)

other_elm_info = elm_data_table[(elm_data_table['LC-col'] == LC) & (elm_data_table['ELM'] == other_elm )]

你是这个意思吗

import pandas as pd
import numpy as np

df = pd.DataFrame({ 'A' : 1.,
                    'B' : pd.Timestamp('20130102'),
                    'C' : pd.Series(1,index=list(range(4)),dtype='float32'),
                    'D' : np.array([3] * 4,dtype='int32'),
                    'E' : pd.Categorical(["test","train","tot","toast"]),
                    'F' : 'foo' })

elms=['test','train']

df[df.E.isin(elms)]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM