python - 使用数据框附加 Excel 工作表
问题描述
我已经编写了一个代码,它工作正常,但是我需要一些帮助来正确组织它。
在这里,我正在创建一个 excel 表并尝试在行尾追加。
代码:
writer = pd.ExcelWriter('demo.xlsx', engine='xlsxwriter')
df = pd.DataFrame(columns=['DEVICE_ID','DEVICE_NAME','DRIVER_VERSION'])
for key,value in driver_dict.items():
device = clean_generic_terms(str(key)).lower()
hwids = all_drivers_details["driverElements"][device]["HardwareID"].split(",")
df = df.append({'DEVICE_ID': ["NA" if dev_id=='' else dev_id for dev_id in hwids],
'DEVICE_NAME': device,
'DRIVER_VERSION': value}, ignore_index=True)
print(df)
df.to_excel(writer, sheet_name='Windows10', index=False)
writer.save()
当前的工作代码正在生成具有以下输出的 excel 表。
在这里,我需要用逗号分隔每个设备 ID 并更新到单独的行中。现在代码将设备 ID 列表本身插入一行。
我需要这样的东西
请帮我。提前致谢。
解决方案
实际上,您应该发布可重现的代码,以便我们可以尝试发布答案。不管怎样,你试一试。在您的主 for 循环中添加此代码并尝试。
hwids = all_drivers_details["driverElements"][device]["HardwareID"].split(",")
for id in hwids
df = df.append({'DEVICE_ID': "NA" if id=='' else id,
'DEVICE_NAME': device,
'DRIVER_VERSION': value}, ignore_index=True)
print(df)
推荐阅读
- c - 如何用c编写一个可以改变服务器上视频/音频进度的服务器?
- php - Laravel Blade,在集合上使用 pluck 不会返回数组
- azure - 在已发布的 Webapp Inside Appservice 计划中获取用户身份后 Azure Azure 目录身份验证的问题
- c - 输出文件 C 中包含给定单词的行
- entity-framework - Entity Framework Core 的 UpdateRange 方法不起作用
- reactjs - 在 redux reducer 中使用自定义钩子
- javascript - 如何在 Firebase 数据库中获取对象的子对象?
- python - 为什么我收到 IndexError:列表索引超出范围?
- c++ - SFML:矢量 2
无法编译 - javascript - 如何在 Javascript 集合对象的特定索引处添加元素?