鞍山+网站建设,网站建设栏目设计,wordpress更换logo,设计软件名称Pandas 的 melt 方法用于将宽格式#xff08;wide format#xff09;的 DataFrame 转换为长格式#xff08;long format#xff09;的 DataFrame。这种转换在数据处理和可视化中非常有用#xff0c;尤其是在处理多列数据时。
宽格式 vs 长格式
宽格式#xff08;Wide F…Pandas 的 melt 方法用于将宽格式wide format的 DataFrame 转换为长格式long format的 DataFrame。这种转换在数据处理和可视化中非常有用尤其是在处理多列数据时。
宽格式 vs 长格式
宽格式Wide Format每一列代表一个变量每一行代表一个观测值。长格式Long Format每一行代表一个变量的一个观测值变量名和值分别存储在两列中。
melt 方法的主要参数包括
id_vars指定哪些列保持不变即不进行转换。value_vars指定哪些列需要转换默认是除了 id_vars 之外的所有列。var_name指定变量名列的名称默认是 variable。value_name指定值列的名称默认是 value。
import pandas as pddata {Name: [Alice, Bob, Charlie],Math: [85, 90, 78],Science: [92, 88, 85],English: [88, 95, 90]
}
df pd.DataFrame(data) # 宽表
print(df)使用melt转为长格式
df_melted df.melt(id_vars[Name], var_nameSubject, value_nameScore)1795. 每个产品在不同商店的价格 - 力扣LeetCode 请你重构 Products 表查询每个产品在不同商店的价格使得输出的格式变为(product_id, store, price) 。如果这一产品在商店里没有出售则不输出这一行。 输出结果表中的 顺序不作要求 。 解题思路使用melt将宽表转为长表的基础操作
import pandas as pddef rearrange_products_table(products: pd.DataFrame) - pd.DataFrame:return products.melt(id_vars[product_id], var_namestore,value_nameprice).dropna()