1
我有以下代码行从数据框“Diff”中提取某些列。当应用data.table函数时,列名将被重命名为V1,V2,V3等。我如何保持列名与以前相同(因为它们出现在Diff数据框中)?应用Data.table函数后保持列名相同
data.table(Diff$FactSet.Fund.Code, Diff$FactsetDate.x, , Diff$DeskName.x)
我有以下代码行从数据框“Diff”中提取某些列。当应用data.table函数时,列名将被重命名为V1,V2,V3等。我如何保持列名与以前相同(因为它们出现在Diff数据框中)?应用Data.table函数后保持列名相同
data.table(Diff$FactSet.Fund.Code, Diff$FactsetDate.x, , Diff$DeskName.x)
假设当你从一个data.frame去data.table出现问题,你可以先用diff <- data.table(diff)
把你data.frame在其整体的data.table。 然后您可以使用subset()
轻松地将您的data.table子集以及您想要保留的列名称列表。这样你会保留你的原名。这里所说:
# Libraries
library(data.frame)
# Here's dataframe with some random data
# that fits your description:
diff = data.frame(FactSet.Fund.Code=rep(c("a","b"),c(2,3)),FactsetDate.x=1:5,FactsetSomethingelse=5:1)
#class(diff)
diff = data.table(diff)
#class(diff)
# The names fo the columns you'd like to keep:
selection = c('FactSet.Fund.Code','FactsetDate.x')
# Your desired subset:
diff <- subset(diff,,selection)
# And now it should look like this:
FactSet.Fund.Code FactsetDate.x
1: a 1
2: a 2
3: b 3
4: b 4
5: b 5
'data.table(DIFF [C( “FactSet.Fund.Code”, “FactsetDate.x”, “DeskName.x”))' – Roland
你也可以做到这一点(在如果您想选择不同的名称): data.table(fund = Diff $ FactSet.Fund.Code,date = Diff $ FactsetDate.x,,desk = Diff $ DeskName.x) – user108363