小编Sha*_*noo的帖子

在python中读取巨大的sas数据集

我有一个 50 GB 的 SAS 数据集。我想在 pandas 数据框中读取它。快速读取 sas 数据集的最佳方法是什么?

我使用了下面的代码,速度太慢了:

import pandas as pd
df = pd.read_sas("xxxx.sas7bdat", chunksize = 10000000)
dfs = []
for chunk in df:
    dfs.append(chunk)
df_final = pd.concat(dfs)
Run Code Online (Sandbox Code Playgroud)

有没有更快的方法来读取Python中的大数据集?可以并行运行这个过程吗?

sas python-3.x pandas

9
推荐指数
2
解决办法
2万
查看次数

通过基于“_”拆分文本来替换熊猫列

我有一个如下所示的熊猫数据框

import pandas as pd
df = pd.DataFrame({'col':['abcfg_grp_202005', 'abcmn_abc_202009', 'abcgd_xyz_8976', 'abcgd_lmn_1']})
df

    col
0   abcfg_grp_202005
1   abcmn_abc_202009
2   abcgd_xyz_8976
3   abcgd_lmn_1
Run Code Online (Sandbox Code Playgroud)

我想在“col”中的 _ 之前将“col”替换为第一个实例。如果在 _ 之后的第三个实例中有一个数字,则将其附加到“col”的末尾,如下所示

    col
0   abcfg
1   abcmn
2   abcgd
3   abcgd_1
Run Code Online (Sandbox Code Playgroud)

python dataframe python-3.x pandas

6
推荐指数
1
解决办法
163
查看次数

使用工作表格式忽略 text_wrap 格式

换行文字对我不起作用。我尝试了以下代码:

writer = pd.ExcelWriter(out_file_name, engine='xlsxwriter')
df_input.to_excel(writer, sheet_name='Inputs')
workbook  = writer.book
worksheet_input = writer.sheets['Inputs']
header_format = workbook.add_format({
        'bold': True,
        'text_wrap': True})

# Write the column headers with the defined format.
worksheet_input.set_row(1,45,header_format )
Run Code Online (Sandbox Code Playgroud)

这是我的结果截图

在此处输入图片说明

换行文字对我不起作用。我尝试了以下代码:

writer = pd.ExcelWriter(out_file_name, engine='xlsxwriter')
df_input.to_excel(writer, sheet_name='Inputs')
workbook  = writer.book
worksheet_input = writer.sheets['Inputs']
header_format = workbook.add_format({
        'bold': True,
        'text_wrap': True})

# Write the column headers with the defined format.
worksheet_input.set_row(1,45,header_format )
Run Code Online (Sandbox Code Playgroud)

这是我的结果截图

在此处输入图片说明

使用@amanb 的解决方案/代码出现以下错误 在此处输入图片说明

我的数据框看起来像下面

在此处输入图片说明

excel python-3.x xlsxwriter

1
推荐指数
1
解决办法
1324
查看次数

标签 统计

python-3.x ×3

pandas ×2

dataframe ×1

excel ×1

python ×1

sas ×1

xlsxwriter ×1