df1['date'] = df1['date'].apply(lambda x: mdates.date2num(pd.to_datetime(x)))写一个循环,相同操作,1到14
时间: 2024-01-29 08:04:43 浏览: 159
你可以使用一个循环来对每个 DataFrame 执行相同的操作。具体实现方法如下:
```python
import pandas as pd
import matplotlib.dates as mdates
# 创建一个空列表,用于存储所有的 DataFrame
dfs = []
# 循环读取文件
for i in range(1, 15):
filename = 'E:/应统案例大赛/附件1-股票交易数据/a{}.xlsx'.format(i)
df = pd.read_excel(filename)
# 将每个 DataFrame 添加到列表中
dfs.append(df)
# 循环对每个 DataFrame 执行相同的操作
for i in range(14):
df = dfs[i]
df['date'] = df['date'].apply(lambda x: mdates.date2num(pd.to_datetime(x)))
```
这个循环会从 a1.xlsx 读取到 a14.xlsx,每次读取一个文件,并将其存储在 `df` 变量中,然后将每个 DataFrame 添加到 `dfs` 列表中。接下来,循环遍历 `dfs` 列表中的每个 DataFrame,并对它们进行相同的操作。在这个例子中,我使用 `df['date'] = df['date'].apply(lambda x: mdates.date2num(pd.to_datetime(x)))` 将每个 DataFrame 的 'date' 列转换为 matplotlib 的日期格式。
阅读全文