我有一个mixed dataframe字符和数字变量。

city,hs_cd,sl_no,col_01,col_02,col_03
Austin,1,2,,46,Female
Austin,1,3,,32,Male
Austin,1,4,,27,Male
Austin,1,5,,20,Female
Austin,2,2,,42,Female
Austin,2,1,,52,Male
Austin,2,3,,25,Male
Austin,2,4,,22,Female
Austin,3,3,,30,Female
Austin,3,1,,65,Female

我想将数据框中的所有小写字符转换为大写。有什么方法可以一次完成一次操作,而不必在每个字符变量上重复执行此操作?

最佳答案

从以下样本数据开始:

df <- data.frame(v1=letters[1:5],v2=1:5,v3=letters[10:14],stringsAsFactors=FALSE)

  v1 v2 v3
1  a  1  j
2  b  2  k
3  c  3  l
4  d  4  m
5  e  5  n

您可以使用 :
data.frame(lapply(df, function(v) {
  if (is.character(v)) return(toupper(v))
  else return(v)
}))

这使 :
  v1 v2 v3
1  A  1  J
2  B  2  K
3  C  3  L
4  D  4  M
5  E  5  N

关于r - 将数据框中所有字符变量的所有值从小写转换为大写,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16516593/

10-12 17:38