修改代码,添加判断是否已存在该公司在该月份的数据

import pandas as pd

读取数据

df = pd.read_excel('制裁名单.xlsx')

将第四列转化为日期格式

df['year'] = pd.to_datetime(df['year'], format='%Y')

新建一个空的DataFrame

new_df = pd.DataFrame()

遍历每行数据

for index, row in df.iterrows(): # 获取公司名称 company = row['company']

# 获取上市年份和当前年份
start_year = row['year']
end_year = pd.Timestamp('2021')

# 循环遍历每个月
for year_month in pd.date_range(start_year, end_year, freq='MS'):
    # 将年月转化为字符串
    year_month_str = year_month.strftime('%Y-%m')
    
    # 判断新行是否已存在
    if not ((new_df['company'] == company) & (new_df['year_month'] == year_month_str)).any():
        # 新建一行数据
        new_row = {
            'company': company,
            'year_month': year_month_str
        }
        # 将新行转换为 Series 类型
        new_series = pd.Series(new_row)

        # 将新行添加到 DataFrame 中
        new_df = pd.concat([new_df, new_series], ignore_index=True)

将新的DataFrame保存为Excel文件

new_df.to_excel('new_data.xlsx', index=False

import pandas as pd# 读取数据df = pdread_excel制裁名单xlsx# 将第四列转化为日期格式dfyear = pdto_datetimedfyear format=Y# 新建一个空的DataFramenew_df = pdDataFrame# 遍历每行数据for index row in dfiterrows # 获取公司名称 company = ro

原文地址: https://www.cveoy.top/t/topic/edUu 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录