import pandas as pd pd.set_option('display.unicode.east_asian_width',True) df = pd.read_excel('C:\yh\PycharmProjects\study\A5204990500002023050006\study\总表.xlsx',index_col=0,dtype=str) first_card = '6228480269035098277' level_cards = pd.DataFrame({'卡级':[],'账号':[],'账号姓名':[]}) for index,row in df.iterrows(): if row[1] == first_card: level_cards = pd.concat([level_cards,pd.DataFrame({'卡级':['一级卡'],'账号':[row[1]]})],ignore_index=True) level_cards.drop_duplicates(subset='账号',keep='first',inplace=True) for index,row in df.iterrows(): if row[1] == first_card: level_cards = pd.concat([level_cards,pd.DataFrame({'卡级':['二级卡'],'账号':row[3],'账号姓名':row[2]})],ignore_index=True) level_cards.drop_duplicates(subset='账号',keep='first',inplace=True) print(level_cards) for index,row in df.iterrows(): if level_cards in row[1]: level_cards = pd.concat([level_cards, pd.DataFrame({'卡级': ['三级卡'], '账号': row[3], '账号姓名': row[2]})], ignore_index=True) print(level_cards)
时间: 2024-02-04 12:04:01 浏览: 59
这代码主要是用来读取一个 Excel 文件,并对其中的数据进行处理,最终输出一个包含卡级、账号和账号姓名的数据框。其中,“一级卡”是指账号本身,而“二级卡”和“三级卡”是指与账号相关联的其他卡。
具体来说,代码首先通过 pandas 库中的 read_excel() 函数来读取指定路径下的 Excel 文件,然后使用 iterrows() 函数来遍历每一行数据。在第一个 for 循环中,如果某一行的第二列(即“卡号”)等于指定的“一级卡”账号,就将该账号添加到 level_cards 数据框中,并标记为“一级卡”。在第二个 for 循环中,如果某一行的第二列等于“一级卡”账号,就将该账号关联的“二级卡”账号添加到 level_cards 数据框中,并标记为“二级卡”。最后,第三个 for 循环中,如果某一行的第二列包含在 level_cards 数据框中的账号中,就将该行的账号和账号姓名添加到 level_cards 数据框中,并标记为“三级卡”。
最终,代码输出 level_cards 数据框,其中包含所有的卡级、账号和账号姓名信息。
阅读全文