下面是我使用dplyr尝试的代码,
#Make the dataframe
library(dplyr)
fake <-data.frame(id=c(1,1,1,2,2,2,3,3,3,1,1,1,2,2,2,3,3,3),
time=c(rep("Time1",9), rep("Time2",9)),
test=c("calcium","magnesium","zinc","calcium","magnesium","zinc","calcium","magnesium","zinc","calcium","magnesium","zinc","calcium","magnesium","zinc","calcium","magnesium","zinc"),
score=rnorm(18))
df <- dcast(fake, id ~ time + test)
#My attempt
df <- df %>% mutate(category=cut(df[,grepl("calcium", colnames(df))], breaks=c(-Inf, 1.2, 6, 12, Inf), labels=c(0,1,2,3)))
#Error: 'x' must be numeric
#My second attempt
df <- df %>% mutate_at(vars(contains('calcium')), cut(breaks=c(-Inf, 1.2, 6, 12, Inf), labels=c(0,1,2,3)))
#Error: "argument "x" is missing, with no default"
这就是你想要的吗?
library(tidyverse)
library(reshape2) # I added this for your dcast
fake <-data.frame(id=c(1,1,1,2,2,2,3,3,3,1,1,1,2,2,2,3,3,3),
time=c(rep("Time1",9), rep("Time2",9)),
test=c("calcium","magnesium","zinc","calcium","magnesium","zinc",
"calcium","magnesium","zinc","calcium","magnesium","zinc",
"calcium","magnesium","zinc","calcium","magnesium","zinc"),
score=rnorm(18))
df <- dcast(fake, id ~ time + test)
df <- as_tibble(df) #added this
#code
df <- df %>%
mutate_at(vars(contains('calcium')),
~cut(.,
breaks=c(-Inf, 1.2, 6, 12, Inf),
labels=c(0, 1, 2, 3))) %>%
mutate_at(vars(ends_with("_calcium")), funs(as.numeric))
它产生了以下内容:
# A tibble: 3 x 7
id Time1_calcium Time1_magnesium Time1_zinc Time2_calcium Time2_magnesium
<dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 1 2 -0.256 0.303 1 0.144
2 2 2 2.18 0.417 1 0.0650
3 3 1 0.863 -2.32 1 0.163
# ... with 1 more variable: Time2_zinc <dbl>
基于此:https://suzan.rbind.io/2018/02/dplyr-tutorial-2/#mutate-at-to-chang-specific-columns
我试图找出我的字符串是否包含从a到z的所有字母 我们可以通过其他方法解决这个问题,但我正在尝试仅使用模式和匹配器来解决它。
本文向大家介绍C#程序来匹配字符串中的所有数字,包括了C#程序来匹配字符串中的所有数字的使用技巧和注意事项,需要的朋友参考一下 要匹配字符串中的所有数字,请使用C#正则表达式。 首先,设置一个数字字符串- 使用以下正则表达式获取字符串中的数字- 以下是代码- 示例 输出结果
问题内容: 如何替换字符串中所有出现的内容? 如果要替换字符串中的所有换行符(\ n)。 这只会替换第一次出现的换行符 我不知道该怎么做? 问题答案: 使用全局标志。
如何从R中的字符串中删除所有特殊字符并用空格替换它们? 要删除的一些特殊字符是:
我试图检查字符串是否包含完全匹配。例如: String str="这是我的字符串,具有-Policy和-p" 我怎样才能做到以下几点:
我有一些xml文件,希望删除除特定字符串以外的所有内容。 StackOverflow上还有很多类似的问题,但都不适用于我的文件,在尝试了几个小时不同的正则表达式后,我想寻求帮助。 到目前为止,部分成功但并非完全成功的最接近的正则表达式是: xml文件的示例: 我使用regex101,因此可以将示例粘贴在那里,以了解为什么rex只能部分工作。简而言之,它与第一次出现的不匹配,但与第二次出现的匹配。我