需求描述:我们日常实际的工作中经常需要把一列数据按中文和 数字或者字母单独拆分出来
导入所需的库:
import pandas as pd
定义函数 extract_characters
,该函数接受三个参数:file_path
(Excel文件路径)、sheet_name
(工作表名称)和 column_name
(列名)。
def extract_characters(file_path, sheet_name, column_name):
读取E服务器托管网服务器托管网xcel文件并将其存储到DataFrame中:
df = pd.read_excel(file_path, sheet_name=sheet_name)
创建两个新的列 '中文'
和 '其他字符'
,并将它们添加到DataFrame中:
df['中文'] = '' df['其他字符'] = ''
遍历DataFrame的每一行数据:
for index, row in df.iterrows():
获取指定列的值,并将其转换为字符串:
text = str(row[column_name])
初始化两个空字符串变量 chinese
和 other
,用于存储中文字符和其他字符:
chinese = '' other = ''
遍历每个字符:
for char in text:
判断当前字符是否为中文字符(Unicode范围为u4e00
到u9fff
):
if 'u4e00' char 'u9fff':
如果是中文字符,则将其添加到 chinese
字符串中:
chinese += char
如果不是中文字符,则将其添加到 other
字符串中:
other += char
将中文字符集合添加到新的 '中文'
列中:
df.at[index, '中文'] = chinese
将其他字符集合添加到新的 '其他字符'
列中:
df.at[index, '其他字符'] = other
返回处理后的DataFrame对象:
return df
定义测试示例的文件路径、工作表名称和列名:
file_path = r'测试.xlsx' sheet_name = 'Sheet1' column_name = '店铺销售sku'
调用 extract_characters
函数,并将结果存储在 result_df
中:
result_df = extract_characters(file_path, sheet_name, column_name)
将处理后的DataFrame保存为Excel文件:
result_df.to_excel('result.xlsx', index=False)
完整代码:
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net
相关推荐: SegmentFault 思否 11 周年,多重福利派送中!
2023 年,由生成式 AI 所掀起的浪潮正在席卷每一个行业,这是一次新的变革性的机会。回望思否的第 11 个年头,始终积极拥抱新技术,不断在产品上探索创新,一路向前! 2022 年 10 月 24 日上线开源问答社区软件 Answer.dev 2023 年 …