首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R在数据帧列上应用用户定义函数

R在数据帧列上应用用户定义函数
EN

Stack Overflow用户
提问于 2015-01-14 09:24:11
回答 1查看 1.8K关注 0票数 2

在R中,我有一个函数定义来计算两个字符串之间的交集:

代码语言:javascript
复制
containedin <- function(t1,t2){
  return length(Reduce(intersect, strsplit(c(t1,t2), "\\s+"))) 
}

我想在一个包含两个字符串列的数据框架上应用这个函数:data.selectedc(‘关键字’,'title')

代码语言:javascript
复制
keywords                                                                             title
1  Samsung UN48H6350 48" Samsung UN48H6350 48" Full 1080p Smart HDTV 120Hz with Wi-Fi +$50 Visa Gift Card
2  Samsung UN48H6350 48"     Samsung UN48H6350 48" Full HD Smart LED TV -Bundle- (See Below for Contents)
3  Samsung UN48H6350 48"      Samsung UN48H6350 48" Class Full HD Smart LED TV -BUNDLE- See below Details
4  Samsung UN48H6350 48"     Samsung UN48H6350 48" Full HD Smart LED TV With BD-H5100 Blu-ray Disc Player
5  Samsung UN48H6350 48"                 Samsung UN48H6350 48" Smart 1080p Clear Motion Rate 240 LED HDTV
6  Samsung UN48H6350 48"            Samsung UN48H6350 - 48-Inch Full HD 1080p Smart HDTV 120Hz with Wi-Fi
7  Samsung UN48H6350 48"               Samsung 6350 Series UN48H6350 48" 1080p HD LED LCD Internet TV NEW
8  Samsung UN48H6350 48"  Samsung Un48h6350af 75" 1080p Led-lcd Tv - 16:9 - Hdtv 1080p - (un75h6350afxza)
9  Samsung UN48H6350 48"                         Samsung UN48H6350 - 48" HD 1080p Smart HDTV 120Hz Bundle
10 Samsung UN48H6350 48"   Samsung UN48H6350 - 48-Inch Full HD 1080p Smart HDTV 120Hz with Wi-Fi, (R#416)

如何使用对这2列应用的apply函数来返回一个带有结果的新列?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-14 09:33:36

首先,您的return语句确实会给您一个错误。你可能是说

代码语言:javascript
复制
containedin <- function(t1,t2){
  length(Reduce(intersect, strsplit(c(t1,t2), "\\s+"))) 
}

无论如何,您可以使用mapply来解决问题。

代码语言:javascript
复制
mapply(containedin, 
       as.character(data.selected[, 'keywords']), 
       as.character(data.selected[, 'title']))

只有当as.characterfactor (而不是character)时,才有必要使用factor

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27939461

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档