我正在将每个sas数据集从目录列表转换为熊猫中的单个数据
import os
import pandas as pd
import pyreadstat as pyd
os.chdir(r'XX\XX\XX\XXX')假设默认目录包含sasdatset列表。
aa.sas7bdat
bb.sas7bdat
cc.sas7bdat
dd.sas7bdat
ee.sas7bdat现在,我正在创建字典,它使用pyd.read_sas7bdat导入到单个数据框架来迭代每个sas数据集。
ddict={}
for file in os.listdir():
if file.endswith(".sas7bdat"):
name = os.path.splitext(file)[0]
ddict[name]=pyd.read_sas7bdat(file,metadataonly=False)但我仍然无法成功与上述代码和请帮助如何实现。我的输出是为每个sasdatasets集创建新的dataframe i,e应该有多个dataframes注意: dataframe应该是没有扩展的sasdatasets集的名称。
例如,
--> sas数据集aa ->要创建为dataframe
发布于 2020-10-08 16:45:35
我会这样做:
import os
import pyreadstat as pyd
ddict={}
for file in os.listdir():
if file.endswith(".sas7bdat"):
name = os.path.splitext(file)[0]
df, meta = pyd.read_sas7bdat(file)
# store the dataframe in a dictionary
ddict[name]= df
# alternatively bind to a new variable name
exec(name + "= df.copy()")请记住,read_sas7bdat为您提供了数据和元数据对象的元组,而不仅仅是数据。
https://stackoverflow.com/questions/64246782
复制相似问题