Ich möchte eine Reihe von zufällig generierten Zahlen in eine Textdatei mit festem Format schreiben. Aus einigen Gründen schrieb write.fwf nur die erste Spalte rechts, alle anderen Spalten erhielten eine zusätzliche Ziffer. Wie kann ich es reparieren? Vielen Dank!Warum write.fwf() nicht der festgelegten Breite folgte
set.seed(1899)
library(sensitivity)
library(randtoolbox)
par_lower <- c(0.12, 0.13, 0.038, 0.017)
par_upper <- c(12.00, 13.00, 3.800, 1.700)
sample_size <- 5
lim_para8 <- c(par_lower[1], par_upper[1])
lim_para9 <- c(par_lower[2], par_upper[2])
lim_parb8 <- c(par_lower[3], par_upper[3])
lim_parb9 <- c(par_lower[4], par_upper[4])
par_rand <- parameterSets(par.ranges = list(lim_para8, lim_para9,
lim_parb8, lim_parb9),
samples = sample_size, method = "sobol")
par_rand
# write to file
library(gdata)
file2write <- paste("par.txt", sep = "")
write.fwf(par_rand, file = file2write, width = c(10, 10, 10, 10), colnames = FALSE)
Die Ergebnisse:
6.060 6.56500 1.91900 0.858500
9.030 3.34750 2.85950 0.437750
3.090 9.78250 0.97850 1.279250
4.575 4.95625 2.38925 0.227375
10.515 11.39125 0.50825 1.068875
Wenn ich
geändertwrite.fwf(par_rand, file = file2write, width = c(10, 9, 9, 9),
colnames = FALSE, quote = FALSE, rownames = FALSE)
ich diesen Fehler
bekamError in write.fwf(par_rand, file = file2write, width = c(10, 9, 9, 9), :
'width' (9) was too small for columns: V4
'width' should be at least (10)
Justs, indem Sie es betrachten: Ihre letzte Spalte hat eine Breite von 11. – KoenV
Ich weiß, aber es wurde geschrieben von 'write.fwf()'. Ich möchte nur die Breite von 10 haben. Vielen Dank! – Tung
Bitte sehen Sie sich die Antwort an. Ich denke, ich habe den Schuldigen und die Lösung gefunden. – KoenV