我必须excel文件与以下字段
文件1
列1、列2、列3、列4、列5、列6、列7、列8、列9
服务器1,java_是,....
服务器2,java_编号,....
服务器4,java_编号,....
服务器8,java_编号,....
文件2
列1、列2、列3、列4、列5、列6、列7、列8、列9
服务器1,java_是,....
服务器3,java_编号,....
服务器4,java_是,....
服务器8,java_编号,....
我想
a.迭代文件1
B.将file 1的col 1中的每个条目与file 2的col 1进行比较
c.如果它存在,我想看看file 1-〉col 2中的值是否与file 2-〉col 2中的条目匹配
d.如果file 1-〉col 2与file 2-〉col 2不匹配,则我希望将file 1-〉col 2更新为等于file 2-〉col 2
2条答案
按热度按时间31moq8wy1#
您可以使用
pandas
来实现这一点:首先,使用
pd.read_excel
(或pd.read_csv
)读取文件从您提供的示例中,您应该得到如下内容:
DF1
| | 列1|列2|
| - ------|- ------|- ------|
| 无|伺服器1|java_是|
| 1个|服务器2|java_编号|
| 第二章|服务器4|java_编号|
| 三个|服务器8|java_编号|
DF2
| | 列1|列2|
| - ------|- ------|- ------|
| 无|伺服器1|java_是|
| 1个|服务器3|java_编号|
| 第二章|服务器4|java_是|
| 三个|服务器8|java_编号|
现在在
left
模式下将df2
合并到col1
上的df1
中,并相应地覆盖df1["col2"]
df 1应为
| | 列1|列2|
| - ------|- ------|- ------|
| 无|伺服器1|java_是|
| 1个|服务器2|java_编号|
| 第二章|服务器4|java_是|
| 三个|服务器8|java_编号|
mbzjlibv2#
假设您有一个名为workbook.xlsx的文件,其中包含2个工作表(即sheet 1,sheet 2),首先您可以使用以下代码访问它。
现在DF 1表示第一片,DF 2表示第二片。
您可以在列名“col 1”上迭代df 1,以检查条件并使用以下代码更新新数据框。
但这将只检查同一行号上的关联值。如果您需要检查Sheet 1-〉col 1值是否存在于Sheet 2-〉col 1值中,您可以使用此循环,而不是将获得相同的结果。
最后将您的结果存储到一个新的excel工作簿中,您可以使用。
这将保证您将Sheet 1-〉col 2中的所有值与Sheet 2-〉col 2匹配,只要Sheet 1-〉col 1 == Sheet 2-〉col 1