Utwórz pustą ramkę danych.

I'm próbuje zainicjować data.frame bez żadnych wierszy. Zasadniczo chcę określić typy danych dla każdej kolumny i nazwać je, ale nie mam żadnych wierszy utworzonych w wyniku.

Najlepsze, co do tej pory udało mi się zrobić, to coś w stylu:

df <- data.frame(Date=as.Date("01/01/2000", format="%m/%d/%Y"), 
                 File="", User="", stringsAsFactors=FALSE)
df <- df[-1,]

Co tworzy data.frame z pojedynczym wierszem zawierającym wszystkie typy danych i nazwy kolumn, które chciałem, ale także tworzy bezużyteczny wiersz, który następnie musi zostać usunięty.

Czy istnieje lepszy sposób, aby to zrobić?

Rozwiązanie

Po prostu zainicjalizuj go pustymi wektorami:


df 
Komentarze (16)

Możesz to zrobić bez określania typów kolumn

df = data.frame(matrix(vector(), 0, 3,
                dimnames=list(c(), c("Date", "File", "User"))),
                stringsAsFactors=F)
Komentarze (1)

Możesz użyć read.table z pustym ciągiem dla wejścia text w następujący sposób:


colClasses = c("Date", "character", "character")
col.names = c("Date", "File", "User")

df 
Komentarze (3)