Próbuję stworzyć fabułę z elementami pliku csv, który wygląda tak:argumenty implikują różnej liczby rzędów: 8, 20
h1,h2,h3,h4
a,1,0,1,0
b,1,1,0,1
c,0,0,1,0
Próbowałem poniższy kod, ale otrzymuję błąd mówiąc
Error in data.frame(id = varieties, attr(mat, "row.names"), check.rows = FALSE) :
arguments imply differing number of rows: 8, 20
Moje przykładowe dane mają 8 kolumn i 20 wierszy (z wyłączeniem nazw nagłówków i wierszy). Próbowałem wyszukać online i próbowałem zaimplementować kilka poprawek, ale problem nadal występuje. Naprawdę doceniam każdą pomoc.
mat <- read.csv("trial.csv", header=T, row.names=1)
varieties = names(mat)
df <- data.frame(id=varieties,attr(mat, "row.names"), check.rows= FALSE)
Która linia zgłasza błąd? Czy możesz uruchomić skrypt wiersz po wierszu i zgłosić wyniki? Czy można udostępnić plik? –
@MylesBaker 'df <- data.frame (id = odmiany, attr (mat, "row.names"), check.rows = FALSE) "podaje błąd. – abn
To będzie działać tylko wtedy, gdy 'mat' jest macierzą kwadratową (nrows = ncols). Co chcesz osiągnąć? Może 'list' jest lepiej dopasowany do twoich potrzeb ... Lub zobacz' cbind.fill' [tutaj] (http://stackoverflow.com/questions/7962267/cbind-a-df-with-an-empty-df -cbind-fill) – EDi