这是我的数据集。
print(data)
Month.2020 Jan Feb Mar Apr May Jun Jul
1 1st of Month Count 4248 4413 4534 4634 4621 4424 3323
2 Monthly Difference NA +165 +121 +100 -13 -197 -1101
3 Monthly Percent Change NA 0.038 0.027 0.022 -0.002 -0.043 -0.249
我希望我的输出是
Month.2020 Jan Feb Mar Apr May Jun Jul
1 1st of Month Count 4248 4413 4534 4634 4621 4424 3323
2 Monthly Difference NA +165 +121 +100 -13 -197 -1101
3 Monthly Percent Change NA 3.8% 2.7% 2.2% -0.2% -4.3% -24.9%
我尝试了以下操作,但不起作用
data[3,2:8] <- apply(data[5:7,2:5]*100, 2, function(x) paste0(x, "%"))
我试着指定每个";Cell";也不起作用
data[3,3] <- paste("3.8%")
试试这个:
df[3,-c(1,2)] <- paste0(100*df[3,-c(1,2)],'%')
Month.2020 Jan Feb Mar Apr May Jun Jul
1 1stofMonthCount 4248 4413 4534 4634 4621 4424 3323
2 MonthlyDifference NA 165 121 100 -13 -197 -1101
3 MonthlyPercentChange NA 3.8% 2.7% 2.2% -0.2% -4.3% -24.9%
#Data
df <- structure(list(Month.2020 = c("1stofMonthCount", "MonthlyDifference",
"MonthlyPercentChange"), Jan = c(4248L, NA, NA), Feb = c(4413,
165, 0.038), Mar = c(4534, 121, 0.027), Apr = c(4634, 100, 0.022
), May = c(4621, -13, -0.002), Jun = c(4424, -197, -0.043), Jul = c(3323,
-1101, -0.249)), row.names = c(NA, -3L), class = "data.frame")
您可以使用:
df[3, 2:8] <- sapply(df[3, 2:8], function(x) scales::percent(x, big.mark = 1, accuracy = 0.1))