R 如何选择数据并将其添加到特定行?
如何循环一列中的值以查找特定的字符集,然后,如果该行具有这些字符,如何为新列中的该行指定特定的值 例如,在这个问题中,我们必须给每个不同意的回答分配一个点,给同意的回答分配零R 如何选择数据并将其添加到特定行?,r,loops,R,Loops,如何循环一列中的值以查找特定的字符集,然后,如果该行具有这些字符,如何为新列中的该行指定特定的值 例如,在这个问题中,我们必须给每个不同意的回答分配一个点,给同意的回答分配零 Id Gender Age Participate Question Response Score <int> <chr> <int> <int> <chr> <
Id Gender Age Participate Question Response Score
<int> <chr> <int> <int> <chr> <chr> <dbl>
1 16 Male 20 1 Q1 Slightly Disagree 0
2 17 Male 40 1 Q1 Definitely Agree 0
3 18 Male 33 1 Q1 Definitely Agree 0
4 19 Male 18 1 Q1 Definitely Agree 0
5 20 Male 24 1 Q1 Definitely Disagree 0
6 21 Female 42 1 Q1 Slightly Disagree 0
7 22 Female 19 1 Q1 Slightly Agree 0
8 28 Female 49 1 Q1 Slightly Disagree 0
9 29 Female 17 1 Q1 Slightly Agree 0
10 31 Male 18 1 Q1 Slightly Agree 0`
Id性别年龄参与问题回答分数
1 16男20 1 Q1轻微不同意0
2 17男性40 1 Q1绝对同意0
3 18男33 1 Q1绝对同意0
4 19男18 1 Q1绝对同意0
5 20男24 1 Q1绝对不同意0
6 21女性42 1 Q1稍微不同意0
7 22女性19 1 Q1略微同意0
8 28女性49 1 Q1稍微不同意0
9 29女性17 1 Q1略微同意0
10 31男性18 1 Q1略微同意0`
查看:
从中选择*
更新位置
这一定是重复的,找不到 无论如何,正如@Zheyuan Li所指出的,在这种情况下,您可以使用
ifelse
您可以使用grepl
查找文本中是否有“不同意”一词grepl
返回一个布尔向量,您可以将其包装为.numeric
as.numeric(grepl("Disagree", df$Response))
#[1] 1 0 0 0 1 1 0 1 0 0
因此,考虑到df
作为您的数据帧,您可以通过
df$new_column <- as.numeric(grepl("Disagree", df$Response))
df$new_column根据我对您下面问题的理解,查询应该适合您
UPDATE yourSchema.yourTable anAlias
SET Score = finalData.Score
FROM
(SELECT Id,
CASE
WHEN Response LIKE '%Disagree%' THEN 1
ELSE 0
END AS score
FROM yourSchema.yourTable) finalData
WHERE anAlias.Id = finalData.Id;
点击链接查看类似问题。而用户则回复。。就像他们告诉我的,任何人都会为你写代码的。非常感谢。我刚开始写R(和一般的编码),所以我完全迷路了。