使用R,如何将数据帧的列设为数据帧的索引?让我们假设我从.csv文件中读取数据。其中一列称为“日期”,我想将该列作为我的数据帧的索引。
例如在Python,NumPy,Pandas;我会做以下事情:
df = pd.read_csv('/mydata.csv')
d = df.set_index('Date')
现在我该怎么做R?
我试过R:
df <- read.csv("/mydata.csv")
d <- data.frame(V1=df['Date'])
# or
d <- data.frame(Index=df['Date'])
# but these just make a new dataframe with one 'Date' column.
#The Index is still 0,1,2,3... and not my Dates.
答案 0 :(得分:31)
我认为“索引”是指行名称。您可以为行名称赋值:
rownames(df) <- df$Date
答案 1 :(得分:5)
可以在读取数据时在熊猫和R中设置索引。
在大熊猫中:
import pandas as pd
df = pd.read_csv('/mydata.csv', index_col="Date")
在R中:
df <- read.csv("/mydata.csv", header=TRUE, row.names="Date")
答案 2 :(得分:1)
tidyverse解决方案:
library(tidyverse)
df %>% column_to_rownames(., var = "Date")
答案 3 :(得分:0)
在保存数据框时使用 row.names=F 例如write.csv(prediction.df, "my_file.csv", row.names=F)