我有2个数据框:dfA
和dfB
我希望能够从符合dfB
dfA
中提取整行
示例:
if (dfA$colA == dfB$colB) && (dfB$colC >= dfA$colD) &&
(dfB$colC <= dfA$colE) { print rows from dfB }
dfA
中第1列的值必须与dfB
和
dfB
中第3列的值需要在dfA
中第4列和第5列设置的范围内。
输出应该是dfB
符合这些条件的行。
答案 0 :(得分:0)
我不确定R,但我猜它必须与Pandas类似:只需创建三个布尔掩码,每个标准一个,然后将它们与整体掩码相结合。
实施例: 1stBoolMask = dfB [dfA $ colA == dfB $ colB] - &gt;类似于(0 0 1 1 0 1 0 1 ...)的东西返回。 A&#34; 1&#34;代表dfB中的每个匹配条目。
2ndBoolMask = ...
3rdBoolMask = ...
- &GT; OverallMask = 1stBoolMask&amp; 2ndBoolMask&amp; 3rdBoolMask
然后将这个应用到dfB,你应该完成。 &#34; 1s&#34;在结果过滤器中表示dfB的匹配行。