如何使用 dcast() 将 5x2 data.table 转换为 1x5 data.tabe?
How to use dcast() to convert a 5x2 data.table to a 1x5 data.tabe?
我有以下data.table
DT
ABBREVIATION FULL_TEXT
-----------------------------
DCD TEXT1
PCK TEXT2
KLM TEXT3
NOP TEXT4
XYZ TEXT5
我想转换 data.table 以便每个 "ABBREVIATION" 都是它自己的列名。还有一行详细说明了 "FULL_TEXT",所以
DCD PCK KLM NOP XYZ
------------------------------------
TEXT1 TEXT2 TEXT3 TEXT4 TEXT5
我尝试使用
dcast(DT, FULL_TEXT ~ ABBREVIATION, value.var = "FULL_TEXT")
但这不起作用。谢谢
dcast(df, 1 ~ ABBREVIATION, value.var = 'FULL_TEXT')[, -1, with = FALSE]
# DCD KLM NOP PCK XYZ
# 1: TEXT1 TEXT3 TEXT4 TEXT2 TEXT5
不过你应该改用转置
data.table::transpose(df, make.names = 'ABBREVIATION')
# DCD PCK KLM NOP XYZ
# 1: TEXT1 TEXT2 TEXT3 TEXT4 TEXT5
使用的数据
df <- fread('
ABBREVIATION FULL_TEXT
DCD TEXT1
PCK TEXT2
KLM TEXT3
NOP TEXT4
XYZ TEXT5
')
我有以下data.table
DT
ABBREVIATION FULL_TEXT
-----------------------------
DCD TEXT1
PCK TEXT2
KLM TEXT3
NOP TEXT4
XYZ TEXT5
我想转换 data.table 以便每个 "ABBREVIATION" 都是它自己的列名。还有一行详细说明了 "FULL_TEXT",所以
DCD PCK KLM NOP XYZ
------------------------------------
TEXT1 TEXT2 TEXT3 TEXT4 TEXT5
我尝试使用
dcast(DT, FULL_TEXT ~ ABBREVIATION, value.var = "FULL_TEXT")
但这不起作用。谢谢
dcast(df, 1 ~ ABBREVIATION, value.var = 'FULL_TEXT')[, -1, with = FALSE]
# DCD KLM NOP PCK XYZ
# 1: TEXT1 TEXT3 TEXT4 TEXT2 TEXT5
不过你应该改用转置
data.table::transpose(df, make.names = 'ABBREVIATION')
# DCD PCK KLM NOP XYZ
# 1: TEXT1 TEXT2 TEXT3 TEXT4 TEXT5
使用的数据
df <- fread('
ABBREVIATION FULL_TEXT
DCD TEXT1
PCK TEXT2
KLM TEXT3
NOP TEXT4
XYZ TEXT5
')