Python打开excel把时间那一列中的小时提取出来到另一列
时间: 2023-05-26 18:04:08 浏览: 53
假设时间列为A,提取出来的小时列为B,以下是一个例子代码:
```python
import openpyxl
from datetime import datetime
# 打开Excel文件
wb = openpyxl.load_workbook('example.xlsx')
sheet = wb.active
# 遍历时间列,提取小时并写入到小时列
for row in sheet.iter_rows(min_row=2, values_only=True):
time = row[0]
if time:
hour = datetime.strftime(time, '%H')
sheet.cell(row=row[0].row, column=2, value=hour)
# 保存Excel文件
wb.save('example.xlsx')
```
该代码首先打开一个名为"example.xlsx"的Excel文件,然后遍历时间列中除了标题行之外的所有单元格,获取每个单元格的时间值,提取出来小时(即"%H"),并将小时值写入到相应的小时列中。最后保存Excel文件。注意:datetime.strftime()方法的用法是将datetime对象格式化为字符串,这里将时间格式化为小时("%H")的形式。
相关问题
Python打开excel把其中时间一列中的小时提取到后面一列
可以使用Python的pandas模块来打开excel文件,并提取时间一列中的小时到后面一列。
以下是一个示例代码:
```python
import pandas as pd
# 打开excel文件
df = pd.read_excel('example.xlsx')
# 提取时间一列中的小时到后面一列
df['Hour'] = pd.to_datetime(df['Time']).dt.hour
# 保存修改后的文件
df.to_excel('example_modified.xlsx', index=False)
```
在这个示例代码中,我们首先使用pandas的read_excel函数打开了一个名为example.xlsx的excel文件,并将其存储在一个名为df的DataFrame对象中。
接下来,我们使用pandas的to_datetime函数将时间一列转换为datetime类型,并使用dt.hour函数提取其中的小时,并将其存储在一个名为Hour的新列中。
最后,我们使用to_excel函数将修改后的DataFrame对象保存到一个新的excel文件example_modified.xlsx中,同时禁止写入行索引(index=False)。
需要注意的是,这个代码示例中假设excel文件中的时间一列格式为datetime类型。如果时间一列的格式不是datetime类型,那么需要先将其转换为datetime类型才能使用dt.hour函数提取小时。
Python打开excel数据把时间一列中的小时提取到后面一列
以下是一种实现方法:
```
import pandas as pd
# 读取excel数据
df = pd.read_excel('data.xlsx')
# 提取时间列的小时部分
df['Hour'] = df['Time'].dt.hour
# 将结果保存到新的excel文件中
df.to_excel('data_with_hour.xlsx', index=False)
```
首先,我们使用pandas库读取了excel数据并将其存储在DataFrame对象中。然后,使用`dt`属性将时间列`Time`的小时部分提取到新的列`Hour`中。最后,我们使用`to_excel`方法将结果保存到新的excel文件中,设定`index=False`以去除行索引。