我有下面提到的数据框(Data_1):
Type cal cal2 cal3 cal4
PER-11 125 148 177 198
PER-12 125 148 177 198
PER-13 125 148 177 198
PER-14 125 148 177 198
PER-15 125 148 177 198
PER-16 125 148 177 198
我想添加" - "在列cal
和cal3
中,但最多只有3个单元格。
必填数据框:
Type cal cal2 cal3 cal4
PER-11 - 148 - 198
PER-12 - 148 - 198
PER-13 - 148 - 198
PER-14 125 148 177 198
PER-15 125 148 177 198
PER-16 125 148 177 198
答案 0 :(得分:2)
我们可以使用replace
并使用我们要替换的索引指定list
,因为它是多列替换,请使用mutate_at
library(dplyr)
df1 %>%
mutate_at(vars(cal, cal3), funs(replace(., 1:3, '-')))
# Type cal cal2 cal3 cal4
#1 PER-11 - 148 - 198
#2 PER-12 - 148 - 198
#3 PER-13 - 148 - 198
#4 PER-14 125 148 177 198
#5 PER-15 125 148 177 198
#6 PER-16 125 148 177 198
答案 1 :(得分:2)
使用R base:
> df1[1:3, c("cal", "cal3") ] <- "-"
> df1
Type cal cal2 cal3 cal4
1 PER-11 - 148 - 198
2 PER-12 - 148 - 198
3 PER-13 - 148 - 198
4 PER-14 125 148 177 198
5 PER-15 125 148 177 198
6 PER-16 125 148 177 198