我在excel中有数据,其中最后一列是带有空格的文本。以下是我的数据示例:
| ID | NAME | TEXT | 
|---|---|---|
| 125 | Karl Smith | Lives in England (enter space) birth: 12.08.2005 (enter space) His hobby is cycling. | 
如果我使用python转换为csv,我的数据如下所示:
ID|名称|文本
125 |卡尔·史密斯|住在英国
出生日期:2005年8月12日
他的爱好是骑自行车。
我需要TEXT列如下:
ID|名称|文本125 |卡尔·史密斯|住在英国 (enter space) 出生日期:2005年8月12日 (enter space) 他的爱好是骑自行车。
这是我的脚本:
import pandas as pd
import os
import numpy as np
WD = r'XXX'
os.chdir(WD) 
for file in os.listdir(WD):
    if file.endswith('.xlsx'):
        FILE = file
        sheet_names = pd.ExcelFile(FILE).sheet_names  
        for sn in sheet_names:
            OUTPUT_FILE = '{}_{}'.format(sn,FILE.replace('.xlsx','.csv'))
            df = pd.read_excel(FILE,)
            print(FILE, sn)
            for col in df.columns.to_list():
                df[col] = df[col].map({True: '', False: ''}).fillna(df[col])
                cn = ['IN', 'NAME', 'TEXT']
                df = df.reindex(columns = cn)
                df.to_csv(OUTPUT_FILE,sep='|',encoding='utf-8-sig',index=False)
你知道吗?