Mi informacion de contacto
Correo[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
leer datos: Primer usopandas
Leer datos de archivos de Excel.
Grupo:usargroupby
Agrupa datos según columnas de agrupación especificadas.
Número de estadísticas: Cuente automáticamente el número de apariciones de cada valor único en la columna especificada de cada grupo y cuente los recuentos que cumplen condiciones específicas.
ahorrar:Guarde los resultados estadísticos requeridos en un nuevo archivo
- import pandas as pd
-
- # 定义一个函数来计算特定值组合的计数
- def count_specific_values(group, target_rs, target_lcd_s):
- # 筛选特定值组合的行
- filtered = group[(group['rs'] == target_rs) & (group['lcd_s'] == target_lcd_s)]
- # 返回计数
- return len(filtered)
-
-
- file_path_1 = r'1.xlsx'
- sheet_name_1 = 'a'
- file_path_2 = r'2.xlsx'
- sheet_name_2 = 'b'
-
- df_succes = pd.read_excel(file_path_1,sheet_name=sheet_name_1)
- df2_fail = pd.read_excel(file_path_2,sheet_name=sheet_name_2)
-
- # 合并数据
- df_data_total = pd.concat([df_succes, df2_fail], axis=0)
-
- # 按name号分组
- grouped_data = df_data_total.groupby("name")
-
- # 使用pivot_table计算每个name组中的数据
- auth_pivot_table = grouped_data["rs"].value_counts().unstack(fill_value=0) #rs的值分为0 2 4
-
- # 计算0的次数
- auth_pivot_table['0_cnt'] = auth_pivot_table[0]
-
- # 计算2的次数
- auth_pivot_table['2_cnt'] = auth_pivot_table[2]
-
- # 计算4的次数
- auth_pivot_table['4_cnt'] = auth_pivot_table[4]
-
- # 计算AA次数
- auth_pivot_table['AA'] = grouped_data.apply(lambda x: count_specific_values(x, 0, 2))
-
- # 重置索引
- auth_pivot_table.reset_index(inplace=True)
-
- #选取特定列输出
- result = auth_pivot_table[['name', '0_cnt', '2_cnt', '4_cnt', 'AA']]
-
- # 重命名列名
- result.columns = ['name', '0_cnt', '2_cnt', '4_cnt', 'AA']
-
- # 保存结果到Excel文件
- result.to_excel("name.xlsx")
- print('save succ.')