python读取excel数据 合并第一列和第二列的数据,并放在第三列 并打印行数
时间: 2024-04-11 19:26:00 浏览: 201
你可以使用下面的代码来实现读取Excel数据、合并第一列和第二列,并将合并结果放在第三列,然后打印行数:
```python
import pandas as pd
# 读取Excel文件
data = pd.read_excel('your_file.xlsx')
# 合并第一列和第二列的数据,并放在第三列
data['第三列'] = data['第一列'].astype(str) + data['第二列'].astype(str)
# 打印行数
print("行数:", len(data))
```
请将代码中的`your_file.xlsx`替换为你要读取的Excel文件的路径,然后运行代码即可。代码会读取Excel文件,将合并结果放在第三列,并使用`len(data)`来获取DataFrame的行数,最后打印出来。
相关问题
python读取excel数据 合并第一列和第二列的数据,并放在第三列 ,然后打印行数,每一行对应一个sheet页名称,需要根据sheet页名称读取每个sheet页数据
你可以使用 `pandas` 库来读取Excel数据,并根据sheet页名称读取每个sheet页的数据。然后,你可以合并第一列和第二列的数据,并将结果放在第三列。最后,打印行数和每一行对应的sheet页名称。下面是一个示例代码:
```python
import pandas as pd
# 读取Excel文件
excel_file = pd.ExcelFile('your_file.xlsx')
# 获取所有sheet页名称
sheet_names = excel_file.sheet_names
# 遍历每个sheet页
for sheet_name in sheet_names:
# 读取当前sheet页数据
data = excel_file.parse(sheet_name)
# 合并第一列和第二列的数据,并放在第三列
data['第三列'] = data['第一列'].astype(str) + data['第二列'].astype(str)
# 打印行数和sheet页名称
print(f"Sheet页名称: {sheet_name}")
print(f"行数: {len(data)}")
print(data)
print("-------------------------------------")
```
请将代码中的 `'your_file.xlsx'` 替换为你要读取的Excel文件的路径。代码会首先获取所有sheet页名称,然后遍历每个sheet页。在每个sheet页中,它会读取数据并进行合并和打印。最后,会打印出行数和每个sheet页的名称。
import pandas as pd f = 'D:/workspace/python/5test.xlsx' # 读取Excel文件 data = pd.read_excel(f, sheet_name='Sheet1') # 合并第一列和第二列的数据,并放在第三列 data['交易场景'] = data['交易码'].astype(str) + data['交易名称'].astype(str) # 保存修改后的数据到新的Excel文件 data.to_excel('D:/workspace/python/6test.xlsx', sheet_name='Sheet1') # 打印行数 print("行数:", len(data)) # 打印结果 print(data['第三列'][0]) sheet_names = data['第三列'] excel_file = pd.ExcelFile(f) # 遍历每个sheet页 for sheet_name in sheet_names: # 读取当前sheet页数据 data1 = excel_file.parse(sheet_name) # 打印sheet页名称和数据 print(f"Sheet页名称: {sheet_name}") print(data1) print("-------------------------------------") 优化这段代码
以下是优化后的代码,它通过循环遍历每个sheet页,合并第一列和第二列的数据,并将结果放在第三列,然后打印行数和每个sheet页的数据:
```python
import pandas as pd
# 读取Excel文件
file_path = 'D:/workspace/python/5test.xlsx'
output_file_path = 'D:/workspace/python/6test.xlsx'
sheet_name = 'Sheet1'
# 读取指定sheet页数据
data = pd.read_excel(file_path, sheet_name=sheet_name)
# 合并第一列和第二列的数据,并放在第三列
data['交易场景'] = data['交易码'].astype(str) + data['交易名称'].astype(str)
# 保存修改后的数据到新的Excel文件
data.to_excel(output_file_path, sheet_name=sheet_name, index=False)
# 打印行数
print("行数:", len(data))
# 打印结果
print(data['交易场景'][0])
# 获取所有sheet页名称
excel_file = pd.ExcelFile(file_path)
sheet_names = excel_file.sheet_names
# 遍历每个sheet页
for sheet_name in sheet_names:
# 读取当前sheet页数据
data = excel_file.parse(sheet_name)
# 打印sheet页名称和数据
print(f"Sheet页名称: {sheet_name}")
print(data)
print("-------------------------------------")
```
这段代码在原有代码的基础上进行了如下优化:
1. 将文件路径和sheet名称作为变量,方便修改和复用。
2. 添加了注释,提高代码的可读性。
3. 在保存修改后的数据时,通过`index=False`参数去除默认的行索引。
4. 将第三列的名称由`第三列`改为`交易场景`,与代码逻辑保持一致。
请将代码中的文件路径和文件名根据你的实际情况进行修改,并运行优化后的代码。
阅读全文