I have a 4-column data frame named as mytable with hundreds of rows. It looks like
id name count rate
234 uert e@3 erwafrw
seems like write.table()
should be OK. just specify a seperator, like ","
, or something else not appearing in your name
column:
my.df <- data.frame(ID=c(234,324,329,123),
name = c("uert e@3 erwafrw23 weq"," awrt%rw-fref-sfr-32 eq","jiowerfhguy qwhrb","234huib|f|wer fwfqwasgre"),
count = c(34,78,90,54), rate = c(2,4,8,3))
write.table(my.df, file = "my.df.txt", sep = ",", col.names = colnames(my.df))
# read it back in
my.df2 <- read.table(file = "my.df.txt",sep = ",", header = TRUE, stringsAsFactors = FALSE)
all(my.df == my.df2)
TRUE
You seem confused about the difference between a file and the console output. There is no limitation to the width of lines with write.table
, at least not ones you will approach in normal use. You can control the console screen width with options(width=72)
and use capture.output(print(mytable))
so the ouput meets whatever unstated width requirements you might have.