【发布时间】:2020-02-17 12:48:16
【问题描述】:
我正在寻找一个 R 函数,该函数将使用所需列类型的列表作为参数对数据框进行类型转换,即类似
df = data.frame(x="1", y="2")
df2 = convert(df, col.types=c("integer", "character"))
其中 df2 列将具有指定的类型。我使用了 tidyverse 中的 type_convert 函数,它接近我想要的,但不完全是。例如,它似乎需要列名
df2 = type_convert(df, col_types=cols(x=col_integer(),y=col_character())
这是我无法提前提供的(它不会在没有列名的情况下引发错误,但也不会做我想要它做的事情)。另外,我想将列类型指定为字符向量(就像 read.csv 函数一样),而不是 type_convert 使用 col_ 函数的繁琐方式。
我的最终目标是通过解析不是矩形但由矩形块组成的文件来扩展 read.csv 功能,例如像
2019-10-20 13:09:10
x: 1 S 16
y: 10 25 35 600 final
在文本文件中应该读入带有列的数据框
t="2019-10-20 13:09:10", x1=1, x2="S", x3=16, y1=10, y2=25, y3=35, y4=600, y5="final"
列名和类型将在运行时给出,我只是不希望它们被硬编码,所以我最终会得到几十个不同的 R 函数,每种不同格式 1 个。
如果有代码已经这样做了,请告诉我。
谢谢!
最好的问候, 尼古拉
【问题讨论】:
-
谢谢,这正是我想要找到的。