R - 如何创建/导入数据,以便第一列包含行名?

时间:2017-11-18 16:30:20

标签: r dataframe pca

我尝试将 logisticPCA 包与我自己的数据一起使用。这个软件包的功能只适用于我正在寻找的二进制数据,但是,通常包含观察名称或组的第一列被视为常规变量,并且因为它不会起作用#39 ; s非二进制数据。

包本身包含一个名为 house_votes84 的数据,虽然第一列是每个观察组(民主党/共和党人)的组名,但它不被识别为变量和功能包的工作完美。实际上,在这个website中:通过首先提取第一列的行名来创建一些图:

  

party = rownames(house_votes84)

我尝试了许多不同的方法来导入data.frame(主要是来自记事本的.csv,第一行,标题,名称少一个),第一列包含名称但不被视为变量没有成功。

如何在R?

中创建或模拟此数据结构?
               handicapped-infants water-project-cost-sharing
republican                   0                          1
republican                   0                          1
democrat                    NA                          1
democrat                     0                          1
democrat                     1                          1

简化了house_votes84的Data.frame(row.names和2个变量而不是16个)

2 个答案:

答案 0 :(得分:0)

#Load Data
library(logisticPCA)
data("house_votes84")

#Data is a list of two components:
str(house_votes84)

#Create an object with only the first two columns:
x <- house_votes84[,1:2]

#Or making it a data.frame:
df  <- as.data.frame(house_votes84[,1:2])

#Add column for party
df$party <- rownames(df)

答案 1 :(得分:0)

创建文本或csv文件:

Party, handicapped-infants, water-project-cost-sharing
republican                   0                          1
republican                   0                          1
democrat                    NA                          1
democrat                     0                          1
democrat                     1                          1

然后加载它:

df2 <- read.table("house.txt", header= T)
df3 <-read.csv("house.csv", header=T)