Python怎么处理excel表格单元格空字符串、换行符

import numpy as np
import pandas as pd
import os
import matplotlib.pyplot as plt

# 环境配置:解决中文乱码和图表后端问题
plt.switch_backend('tkAgg')
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False

# 数据加载:读取同一个Excel的3个sheet
file_path = r'D:pythoncodemeal_order.xlsx'
if not os.path.exists(file_path):
    raise FileNotFoundError(f"Excel文件没找到,检查路径:{file_path}")

# 读取3个工作表
data1 = pd.read_excel(file_path, sheet_name='meal_order_detail1')
data2 = pd.read_excel(file_path, sheet_name='meal_order_detail2')
data3 = pd.read_excel(file_path, sheet_name='meal_order_detail3')
# 纵向合并3个sheet的行数据
data = pd.concat([data1, data2, data3], axis=0, ignore_index=True)  # ignore_index重置索引,避免重复
data.dropna(axis=1, inplace=True)
data.head(10)

python在处理excel数据时候发现excel单元格有前面空字符串换行符

Python怎么处理excel表格单元格空字符串、换行符

发现“香烤牛排”数据异常,回头看数据源

Python怎么处理excel表格单元格空字符串、换行符

Python怎么处理excel表格单元格空字符串、换行符

应该是数据输入时候出了问题,为了避免后续处理数据出现问题,需要对数据进行处理,消除空字符。增加功能后代码

import numpy as np
import pandas as pd
import os
import matplotlib.pyplot as plt

# 环境配置:解决中文乱码和图表后端问题
plt.switch_backend('tkAgg')
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False

# 数据加载:读取同一个Excel的3个sheet
file_path = r'D:pythoncodemeal_order.xlsx'
if not os.path.exists(file_path):
    raise FileNotFoundError(f"Excel文件没找到,检查路径:{file_path}")

# 读取3个工作表
data1 = pd.read_excel(file_path, sheet_name='meal_order_detail1')
data2 = pd.read_excel(file_path, sheet_name='meal_order_detail2')
data3 = pd.read_excel(file_path, sheet_name='meal_order_detail3')
# 纵向合并3个sheet的行数据
data = pd.concat([data1, data2, data3], axis=0, ignore_index=True)  # ignore_index重置索引,避免重复
data.dropna(axis=1, inplace=True)
# ===================== 核心步骤:去除所有列的单元格前后空格 =====================
def clean_cell_spaces(df):
    """
    清理DataFrame中所有字符串列的前后空格(包括半角+全角空格)
    :param df: 原始DataFrame
    :return: 清理后的DataFrame
    """
    for col in df.columns:
        # 仅处理字符串类型的列(Pandas中字符串列默认dtype为object)
        if df[col].dtype == 'object':
            # 步骤1:填充空值为空白字符串,避免调用str方法报错
            # 步骤2:替换全角空格为无
            # 步骤3:去除前后半角空格
            df[col] = df[col].fillna('').str.replace(' ', '').str.strip()
    return df
# 调用函数清理空格
data = clean_cell_spaces(data)
data.head(10)

Python怎么处理excel表格单元格空字符串、换行符

空字符异常不见了!

© 版权声明

相关文章

1 条评论

  • 头像
    分快三玩法有什么技巧规律 读者

    收藏了,感谢分享

    无记录
    回复