如何合并名称含GTAH字符的多列数差异数据集为单一数据框
合并含共同字符串的DTA数据集解决方案
以下提供R和Python两种主流编程语言的实现方案,均可自动处理列数不一致的情况(缺失列自动填充NA):
R语言实现
1. 安装并加载依赖包
# 安装未安装的依赖包 if (!require("haven")) install.packages("haven") if (!require("dplyr")) install.packages("dplyr") if (!require("purrr")) install.packages("purrr") # 加载包 library(haven) library(dplyr) library(purrr)
2. 获取目标文件路径
# 筛选当前工作目录中文件名包含"GTAH"的所有.dta文件 file_list <- list.files(pattern = "GTAH", full.names = TRUE, ignore.case = FALSE)
3. 批量读取并合并数据
# 批量读取文件,自动对齐列名并合并为单个数据框 combined_data <- file_list %>% map(read_dta) %>% bind_rows()
bind_rows()会自动匹配所有文件的列名,某个文件缺失的列将以NA填充。
Python语言实现
1. 加载依赖库
import pandas as pd import glob
2. 获取目标文件路径
# 匹配当前目录下所有文件名含"GTAH"的.dta文件 file_list = glob.glob("*GTAH*.dta")
3. 批量读取并合并数据
# 批量读取所有文件,合并为单个DataFrame df_list = [pd.read_stata(file_path) for file_path in file_list] combined_data = pd.concat(df_list, axis=0, join="outer", ignore_index=True)
join="outer"保留所有出现过的列,缺失列填充NA;ignore_index=True重置合并后的行索引。
内容的提问来源于stack exchange,提问作者Ekow_ababio
相关产品推荐
相关产品推荐

