python学习教程32-Excel一列拆分多列

原始数据:

 

# python处理excel一列变多列
import pandas as pd
# 读取数据
df = pd.read_excel("学生资料.xlsx")
df.head()

# 数据拆分

def split_func(line):
    line["姓名"], line['性别'], line['年龄'], line['城市'] = line['数据'].split(":")
    return line

# axis=0,操作时只有第0维的下标变化其他不变。
# axis=1,操作时只有第1维的下标变化其他不变。
# axis=2,操作时只有第2维的下标变化其他不变。

df = df.apply(split_func, axis=1)

#  inplace = True:不创建新的对象,直接对原始对象进行修改;
#  inplace = False:对数据进行修改,创建并返回新的对象承载其修改结果。
df.head()
df.drop(['数据'], axis=1, inplace=True)
df.head()

# 输出到ex表

df.to_excel("拆分excel.xlsx", index=False)

 生成新的excel:

  • 7
    点赞
  • 59
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
可以使用xlrd库和xlwt库来实现按照空Excel拆分多个Excel的操作。首先,使用xlrd库打开原始Excel文件,然后通过sheet_by_index方法获取第一个sheet的数据。接下来,根据空数据进行分割,并将分割后的数据保存到一个字典中。然后,使用xlwt库创建新的Excel文件,并将分割后的数据写入到不同的sheet中。最后,保存新的Excel文件。 以下是一个示例代码,可以按照空Excel拆分多个Excel: ```python import xlrd import xlwt # 打开原始Excel文件 workbook = xlrd.open_workbook(r"C:/Users/Administrator/Desktop/aaa/全国.xlsx") sheet = workbook.sheet_by_index(0) # 读取,从0到第2 rows = \[sheet.row_values(row, 0, 2) for row in range(sheet.nrows)\] # 根据第一列数据进行分割 city_lists = {} for r in rows: if r\[0\] not in city_lists: city_lists\[r\[0\]\] = \[\] city_lists\[r\[0\]\].append(r) # 按照分割后的数据创建新的Excel文件 for (city, lst) in city_lists.items(): wb = xlwt.Workbook() ws = wb.add_sheet(city) # 写入表头 ws.write(0, 0, '城市') ws.write(0, 1, '数量') # 逐行写入数据 row_idx = 1 for new_r in lst: col_idx = 0 for v in new_r: ws.write(row_idx, col_idx, v) col_idx += 1 row_idx += 1 # 保存文件 wb.save('C:/Users/Administrator/Desktop/aaa/' + city + '.xlsx') ``` 这段代码会将原始Excel文件按照第一列的不同值进行拆分,并将拆分后的数据保存到不同的Excel文件中。每个Excel文件的文件名为对应的城市名。 #### 引用[.reference_title] - *1* [python根据某一列内容拆分多个excel](https://blog.csdn.net/qq_39012566/article/details/98630025)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [【python】将一个excel表格按照类目拆分多个表格](https://blog.csdn.net/bingbangx/article/details/126456403)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值