R 中是否有一个函数可以 return 基于其相邻行元素的数据框元素?

Is there a function in R that can return an element of a dataframe based on its neighboring row elements?

我正在做主题建模,我有一个数据框(或来自 tidyverse 的 tibble),主题词概率如下:

dataframe with topic-word probabilities

所有单词出现 9 次,因为我有一个包含 9 个主题的模型,它们的主题概率在 beta 列中找到。我希望能够像这样调用每个单词及其相关主题的 beta 值:

beta_w_t = f(w,t)

我已经尝试过 which 函数,但它似乎无法完成工作。他们这样的功能是内置在R中的,还是我必须自己定义一个?

你试过 filter() 从 dplyr 吗?如果我理解你的问题是正确的,这就是你需要做的 beta_wx_t3 <- filter(your_table, topic == 3 & str_detect(term, 'x') 过滤掉主题 3 和包含 'x'

的术语

str_detect() 如果您想获得部分匹配,则很有用,但如果您愿意,也可以使用 term == 'x'

此外,如果您搜索特定的操作词(例如本例中的过滤器)以及 tidyverse,您通常会找到您需要的功能(或堆栈交换提示用户在 5 分钟内编写相同的函数)!

Tidyverse 是一个不错的 R 生态系统,其中包含许多包,其中包含使用动作词(动词)编写的函数以及格式易于理解的出色文档。我发现自己将这个关键词添加到我的大部分 R 相关 Google 搜索中!

dplyr reference