Clo*_*oud 3 csv r class dataframe
我正在尝试将所有在将 csv 导入字符时显示为逻辑的列转换为字符。
如果我调用每一列,这些代码如下所示,但我有 200 多列,所以它不可行。
library(stringi)
library(readr)
library(dplyr)
df <- read_csv("~/dataverified.csv",
col_types = cols(
Innovation = col_character(),
Tech = col_character(),
Music = col_character()))
Run Code Online (Sandbox Code Playgroud)
这是一列的摘要 () 示例,下面是期望的输出
例如输入摘要
Innovation
Mode:logical
TRUE:403
NA's 45600
Run Code Online (Sandbox Code Playgroud)
例如,每列的欲望输出摘要
Innovation
Length: 45900
Class:character
Mode:character
Run Code Online (Sandbox Code Playgroud)
读取数据集后,我们可以使用dplyr包中的mutate_if函数。可以检查列是否与函数合乎逻辑。如果,我们就可以使用该函数。mutate_ifis.logicalTRUEas.character
# Load package
library(dplyr)
# Create example data frame
df <- data_frame(A = as.logical(c(1, 1, 0)),
B = as.logical(c(1, 0, 1)))
summary(df)
# A B
# Mode :logical Mode :logical
# FALSE:1 FALSE:1
# TRUE :2 TRUE :2
# Convert logical to character
df2 <- df %>%
mutate_if(is.logical, as.character)
summary(df2)
# A B
# Length:3 Length:3
# Class :character Class :character
# Mode :character Mode :character
Run Code Online (Sandbox Code Playgroud)
如果您确定所有列都应该是字符,则还可以考虑该mutate_all函数。
df2 <- df %>%
mutate_all(funs(as.character(.)))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4772 次 |
| 最近记录: |