将字符串读入表中

标签 r read.table

如果我想导入到R中的数据是这样的

kljflksdjfklsdjfsdfj
dfjkdsjfkdjfkldjfkjd
djfkdsjfkdjfjsdfjsdk
dsjfkjsdfkdjsfkjdskj

我想以这样的方式阅读它们,我从中得到一个矩阵,每个符号都是一列(第一列是k,d,d,d),每个新行是一行(4行就我而言)。我怎样才能做到这一点?

最佳答案

您可以使用scan来读取文件:

text <- "kljflksdjfklsdjfsdfj
dfjkdsjfkdjfkldjfkjd
djfkdsjfkdjfjsdfjsdk
dsjfkjsdfkdjsfkjdskj"    

dat <- scan(textConnection(text), "")
# dat <- scan("file.name", "")

函数strsplit将字符串分割成单个字符。 rbind 用于创建矩阵:

do.call(rbind, strsplit(dat, ""))

结果:

     [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12] [,13] [,14] [,15] [,16] [,17] [,18] [,19] [,20]
[1,] "k"  "l"  "j"  "f"  "l"  "k"  "s"  "d"  "j"  "f"   "k"   "l"   "s"   "d"   "j"   "f"   "s"   "d"   "f"   "j"  
[2,] "d"  "f"  "j"  "k"  "d"  "s"  "j"  "f"  "k"  "d"   "j"   "f"   "k"   "l"   "d"   "j"   "f"   "k"   "j"   "d"  
[3,] "d"  "j"  "f"  "k"  "d"  "s"  "j"  "f"  "k"  "d"   "j"   "f"   "j"   "s"   "d"   "f"   "j"   "s"   "d"   "k"  
[4,] "d"  "s"  "j"  "f"  "k"  "j"  "s"  "d"  "f"  "k"   "d"   "j"   "s"   "f"   "k"   "j"   "d"   "s"   "k"   "j"  

关于将字符串读入表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20954768/

相关文章:

r - : missing value where TRUE/FALSE needed [duplicate]时发生错误

r - 尝试将多个连续数字列添加到 r 中的数据帧

r - 防止 fread() 中的列类推断

r - 如何读取指定值上方和下方的行

r - 如何读取标题但也跳过行-read.table()?

r - R : padding at user-defined interval中的padr

r - igraph (R) 中仅在根和终端顶点上添加标签?

r - read.csv与read.table

r - R 中的 fread data.table 不读取列名

R XTS 包 to.mines3