如何根据两列查找值

     2023-04-18     261

关键词:

【中文标题】如何根据两列查找值【英文标题】:How to find the value based on two columns 【发布时间】:2014-07-29 04:21:47 【问题描述】:

数据集是:

col_1,col_2,value
8521,13394,24
8521,14353,15
...
1112074,1112073,52

我想在给定前两列数字的值列中查找一个数字。 我知道使用 data.frame 或 array 可以解决这个问题。但是 col_1 或 col_2 中的最大值太大,以至于我无法构建 1112074*3 的 data.frame。 如何解决这个问题?

【问题讨论】:

我不明白你在问什么。 您能否重新表述问题以使其更清楚一点? 制作一个具有 col_1 和 col_2 的 1112074*2 数据帧。需要时可以计算值。 对不起。我重新表述了这个问题。 【参考方案1】:

如果我对您的理解正确,您希望在给定前两列数字的值列中查找一个数字

这是使用简单 data.frame 和循环函数的一种方法

dd<-data.frame(
   col_1 = c(8521, 8521, 1112074),
   col_2 = c(13394, 14353, 1112073),
   value = c(24,15,52)
)

getval<-function(c1,c2, data=dd) 
    data$value[data$col_1==c1 & data$col_2==c2]


getval(8521, 14353)
# [1] 15

不幸的是,这个过程不是很快。如果您打算经常这样做,您可以考虑使用data.table 库,它允许您为表建立索引以便更快地查找

library(data.table)
dt<-data.table(
   col_1 = c(8521, 8521, 1112074),
   col_2 = c(13394, 14353, 1112073),
   value = c(24,15,52)
)
setkey(dt, col_1, col_2)

getval<-function(c1,c2, data=dt) 
    dt[.(c1,c2)][, value]

getval(8521, 14353)
# [1] 15

【讨论】:

如何根据合并的数据框之一的两列的值在熊猫数据框中添加值

】如何根据合并的数据框之一的两列的值在熊猫数据框中添加值【英文标题】:Howtoaddvaluesinapandasdataframebasedonvaluesoftwocolumnsofoneofthedataframemerged【发布时间】:2021-12-0923:07:57【问题描述】:我需要根据我控制的另一个测试来计算... 查看详情

如何根据Oracle中的值查找表名[重复]

】如何根据Oracle中的值查找表名[重复]【英文标题】:HowtofindthetablenamebasedonavalueinOracle[duplicate]【发布时间】:2021-06-2006:15:12【问题描述】:如何根据我在Oracle中传递的值查找表名?查询应该检查模式中的所有表以检查给定值是... 查看详情

如何根据两列删除所有重复行?

】如何根据两列删除所有重复行?【英文标题】:Howtodeletealltheduplicatesrowbasedontwocolumns?【发布时间】:2019-07-1210:45:52【问题描述】:我有一个数据框,我想在其中删除重复的行,但只有当另一列的值对于所有行都相同时,我才想... 查看详情

SQL 根据两列删除重复记录

】SQL根据两列删除重复记录【英文标题】:SQLDeleteduplicaterecordsbasedontwocolumns【发布时间】:2021-11-1116:13:45【问题描述】:在postgresql中我需要一个查找表以在两列中具有唯一值。我有这个汽车清单,但高尔夫在汽车和商店列上重... 查看详情

如何根据键正则表达式查找值

】如何根据键正则表达式查找值【英文标题】:HowtofindvaluebasedonkeyRegex【发布时间】:2021-12-1209:07:46【问题描述】:我想使用正则表达式根据键提取值,但找不到表达式。我在互联网和***上尝试了很多可用的表达式,但没有任何... 查看详情

在猫鼬中,如何根据相关集合中的值查找记录?

】在猫鼬中,如何根据相关集合中的值查找记录?【英文标题】:Inmongoose,howtofindrecordsbasedonvalueinrelatedcollection?【发布时间】:2020-01-2418:00:25【问题描述】:在Mongoose中,我有两个集合,一个引用另一个。是否有可能有一个查找... 查看详情

如何根据字符串值查找 JSON 对象成员

】如何根据字符串值查找JSON对象成员【英文标题】:HowtofindaJSONobjectmemberbasedonastringvalue【发布时间】:2012-08-1507:35:28【问题描述】:假设我有一个这样的JSON文件:"store":"book":["category":"reference","author":"NigelRees","title":"SayingsoftheCent... 查看详情

根据两列的值选择熊猫数据框行

】根据两列的值选择熊猫数据框行【英文标题】:Selectpandasframerowsbasedontwocolumns\'values【发布时间】:2015-08-1510:28:40【问题描述】:我希望根据两列值选择一些特定的行。例如:d=\'user\':[1.,2.,3.,4],\'item\':[5.,6.,7.,8.],\'f1\':[9.,16.,17.,18... 查看详情

jQuery如何根据数据属性值查找元素?

】jQuery如何根据数据属性值查找元素?【英文标题】:jQueryhowtofindanelementbasedonadata-attributevalue?【发布时间】:2011-05-1015:14:36【问题描述】:我有以下场景:varel=\'li\';页面上有5个&lt;li&gt;,每个都有data-slide=number属性(数字... 查看详情

如何excel两列数据中查找重复数据

参考技术A查询重复数据的具体操作如下:1.首先选中两列数据。2.点击“条件格式”。3.其次点击“突出显示单元格规则”。4.然后点击“重复值”。5.然后点击“确定”。6.这样两列相同数据就被找出来了。拓展资料:常用公式... 查看详情

根据两列重复值找出唯一的***记录[重复]

】根据两列重复值找出唯一的***记录[重复]【英文标题】:Findoutuniquetoprecordbasedontwocolumnsduplicatevalue[duplicate]【发布时间】:2021-09-2207:26:33【问题描述】:以下是一些数据现在我想只检索那些具有唯一current_position_latitude和current_pos... 查看详情

如何按两列值之间的行对熊猫数据框进行切片?

】如何按两列值之间的行对熊猫数据框进行切片?【英文标题】:Howtosliceapandasdataframebyrowsbetweentwocolumnvalues?【发布时间】:2018-03-2918:22:28【问题描述】:ABCDE01.02013-01-021.01test11.02014-01-021.02car21.02015-01-021.03tested31.02016-01-021.04train我... 查看详情

查找两列的最大值并在第三列中填充值

】查找两列的最大值并在第三列中填充值【英文标题】:Findmaxoftwocolumnsandpopulatewithvalueinthirdcolumn【发布时间】:2021-09-1805:02:53【问题描述】:我有一个带有4列的pandas数据框-A、B、C、D和E。我想按A列创建组,然后找到B和C列的最... 查看详情

如何根据一列是不是具有特定值来查找重复行并删除输出?

】如何根据一列是不是具有特定值来查找重复行并删除输出?【英文标题】:Howcanyoufindduplicaterowsanddeleteoutputbasedonwhetherornotonecolumnhasacertainvalue?如何根据一列是否具有特定值来查找重复行并删除输出?【发布时间】:2020-01-1822:44:... 查看详情

按两列分组并根据其中一列计算累积值

】按两列分组并根据其中一列计算累积值【英文标题】:Groupbytwocolumnsandcalculatecumulativevaluebasedononeofthem【发布时间】:2021-01-1400:28:54【问题描述】:请考虑这个列表:List<Data>lst=newList<Data>newData()Id=1,Val1=100,newData()Id=1,Val1=... 查看详情

Pandas - 在两列中查找具有匹配值的行并在另一列中相乘

】Pandas-在两列中查找具有匹配值的行并在另一列中相乘【英文标题】:Pandas-findrowswithmatchingvaluesintwocolumnsandmultiplyvalueinanothercolumn【发布时间】:2019-01-1908:31:47【问题描述】:首先假设我们下面有一个数据框:importpandasaspddata=pd.D... 查看详情

根据两列中的匹配值为日期差异创建条件列

】根据两列中的匹配值为日期差异创建条件列【英文标题】:CreateconditionalcolumnforDateDifferencebasedonmatchingvaluesintwocolumns【发布时间】:2019-09-2116:49:21【问题描述】:我有一个数据框,我正在努力根据其他列创建一个列,我将分享... 查看详情

如何根据散列中的键/值查找键/值数据并将其添加到 Redis 中的散列?

】如何根据散列中的键/值查找键/值数据并将其添加到Redis中的散列?【英文标题】:HowcanIfindandaddkey/valuedatatohashesinRedisbasedonakey/valueinsidethehash?【发布时间】:2017-06-1607:52:50【问题描述】:我的Redis数据存储中有大量的键,所有... 查看详情