在处理大型数据集时,如何正确使用R中的concatenate函数?
我想这是一个非常容易回答的问题。我正在处理一个宫颈癌数据集,我有一个Excel电子表格,我已经导入到R中。我需要将字符变量转换为数字变量,以便能够正确地分析它们。成功了。但是我不知道如何使用R中的concatenate函数来导入实际数据。因为数据集中有859行,所以我把c(1:859)放进去,但我认为这只是用1,2,3,4,5,…859填充了电子表格。我已经导入了一个数据集,但是我不知道如何编码,这样我就可以只传输Excel文档中的内容 我的代码:在处理大型数据集时,如何正确使用R中的concatenate函数?,r,R,我想这是一个非常容易回答的问题。我正在处理一个宫颈癌数据集,我有一个Excel电子表格,我已经导入到R中。我需要将字符变量转换为数字变量,以便能够正确地分析它们。成功了。但是我不知道如何使用R中的concatenate函数来导入实际数据。因为数据集中有859行,所以我把c(1:859)放进去,但我认为这只是用1,2,3,4,5,…859填充了电子表格。我已经导入了一个数据集,但是我不知道如何编码,这样我就可以只传输Excel文档中的内容 我的代码: cervical <- read.csv
cervical <- read.csv("/Users/sophia/Downloads/risk_factors_cervical_cancer.csv")
sapply(cervical, class)
summary(cervical)
cervical<- data.frame(Number.of.sexual.partners = c(1:859),
First.sexual.intercourse = c(1:859),
Num.of.pregnancies = c(1:859),
Smokes..years. = c(1:859),
Hormonal.Contraceptives..years. = c(1:859),
IUD..years. = c(1:859))
cervical$Number.of.sexual.partners <- as.character(cervical$Number.of.sexual.partners)
cervical$First.sexual.intercourse <- as.character(cervical$First.sexual.intercourse)
cervical$Num.of.pregnancies <- as.character(cervical$Num.of.pregnancies)
cervical$Smokes..years. <- as.character(cervical$Smokes..years.)
cervical$Hormonal.Contraceptives..years. <-
as.character(cervical$Hormonal.Contraceptives..years.)
cervical$IUD..years. <- as.character(cervical$IUD..years.)
sapply(cervical, class)
cervical$Number.of.sexual.partners <-
as.numeric(as.character(cervical$Number.of.sexual.partners))
cervical$First.sexual.intercourse <-
as.numeric(as.character(cervical$First.sexual.intercourse))
cervical$Num.of.pregnancies <- as.numeric(as.character(cervical$Num.of.pregnancies))
cervical$Smokes..years. <- as.numeric(as.character(cervical$Smokes..years.))
cervical$Hormonal.Contraceptives..years. <-
as.numeric(as.character(cervical$Hormonal.Contraceptives..years.))
cervical$IUD..years. <- as.numeric(as.character(cervical$IUD..years.))
sapply(cervical, class)
颈部不太确定您需要什么。
没有实际数据也很难提供帮助
但如果要将所有字符变量转换为数字,可以使用dplyr、mutate()、cross()、where()、is.character()和as.numeric()
例如:
#Create dataframe with numbers as characters:
df<-data.frame(a=as.character(1:4), b=as.character(sample(1:4)), stringsAsFactors = FALSE)
sapply(df, class)
a b
"character" "character"
#创建以数字为字符的数据框:
你的问题令人困惑。您已经导入了数据,为什么需要“连接”某些内容?在第二段代码中,您只是将最初导入的所有信息用read.csv替换为1:859,所以你丢失了你的数据,得到了一个毫无价值的数字序列。我建议你在前进之前,先看一下R的核心和基本知识。我说什么代替1:859?什么都没有。你为什么叫这个…宫颈癌
#Create dataframe with numbers as characters:
df<-data.frame(a=as.character(1:4), b=as.character(sample(1:4)), stringsAsFactors = FALSE)
sapply(df, class)
a b
"character" "character"
df<-df%>%mutate(across(where(is.character), as.numeric))
sapply(df, class)
a b
"numeric" "numeric"