Python [Pandas/docx]:根据通用名称合并两行
Python [Pandas/docx]: Merging two rows based on common name
我正在尝试在 Python3 中使用 docx-python 和 pandas 编写脚本,执行以下操作:
- 从 csv 文件中获取输入
- 合并 C 列的公共值并将每个值添加到 docx
- 导出 docx
我的原始 csv 如下:
SN. Name Instance Severity
1 Name1 file1:line1 CRITICAL
2 Name1 file2:line3 CRITICAL
3 Name2 file1:line1 Low
4 Name2 file1:line3 Low
and so on...
我希望我的 docx 输出为:
`
[1]: https://i.stack.imgur.com/1xNc0.png
我无法弄清楚如何使用 pandas 根据“名称”过滤“实例”,然后打印到 docx。
提前致谢。
下面的代码将select相关列,根据'Name'和'Severity'分组并添加实例在一起
df2 = df[["Name","Instance","Severity"]]
df2["Instance"] = df2.groupby(['Name','Severity'])['Instance'].transform(lambda x: '\n'.join(x))
最后,删除重复项并进行转换以获得所需的输出
df2 = df2.drop_duplicates()
df2 = df2.T
我正在尝试在 Python3 中使用 docx-python 和 pandas 编写脚本,执行以下操作:
- 从 csv 文件中获取输入
- 合并 C 列的公共值并将每个值添加到 docx
- 导出 docx
我的原始 csv 如下:
SN. Name Instance Severity
1 Name1 file1:line1 CRITICAL
2 Name1 file2:line3 CRITICAL
3 Name2 file1:line1 Low
4 Name2 file1:line3 Low
and so on...
我希望我的 docx 输出为: ` [1]: https://i.stack.imgur.com/1xNc0.png
我无法弄清楚如何使用 pandas 根据“名称”过滤“实例”,然后打印到 docx。
提前致谢。
下面的代码将select相关列,根据'Name'和'Severity'分组并添加实例在一起
df2 = df[["Name","Instance","Severity"]]
df2["Instance"] = df2.groupby(['Name','Severity'])['Instance'].transform(lambda x: '\n'.join(x))
最后,删除重复项并进行转换以获得所需的输出
df2 = df2.drop_duplicates()
df2 = df2.T