在R中将DataFrame指定列数据保存为txt文件(每个值单独占一行)
实现方案
你可以先提取目标列后将所有值拉平为一维向量,再导出为txt文件即可,以下是两种常用实现方式:
1. Base R 实现
# 示例数据,可替换为你自己的DataFrame df <- data.frame( A = c("First", "Third"), B = c("Second", "Fourth"), `column not to save` = c("Value", "Value"), check.names = FALSE ) # 筛选需要导出的列,示例保留A、B列 target_df <- df[, c("A", "B")] # 按行顺序拉平为一维向量(和你给出的示例输出顺序一致) output_vals <- unlist(t(target_df), use.names = FALSE) # 导出为txt,每行一个值 write.table(output_vals, file = "result.txt", row.names = FALSE, col.names = FALSE, quote = FALSE, sep = "\n")
2. Tidyverse 实现(适合习惯dplyr语法的场景)
library(dplyr) library(tidyr) df %>% # 筛选需要保留的列 select(A, B) %>% # 按行顺序合并所有值到同一列 pivot_longer(cols = everything(), values_to = "val") %>% # 提取值向量 pull(val) %>% # 导出文件 write.table(file = "result.txt", row.names = FALSE, col.names = FALSE, quote = FALSE, sep = "\n")
顺序调整说明
如果需要按列顺序输出(先输出A列所有值、再输出B列所有值,即First、Third、Second、Fourth),只需要将Base R代码中拉平的逻辑改为:
output_vals <- unlist(target_df, use.names = FALSE)
内容的提问来源于stack exchange,提问作者NotARobot
相关产品推荐
相关产品推荐

