[英]Can I shift specific values in one data column to another column while keeping the other values unchanged?
[英]How do I merge data from one row to another by keeping some column values unchanged in Python DataFrame
DataFrame 中的行數很少,分別是“產品”、“類別”、“尺寸”、“評級”、“評論”和“價格”列。
DataFrame 看起來像這樣:
Product Category Size Rating Reviews Price
1 'A' Kids_1 small 4 10 100
2 'B' Adults Medium 3 15 200
3 'C' Kids_1 Medium 3 15 125
4 'A' Kids_1 small 4 25 100
5 'D' Adults Large 2 10 250
6 'A' Kids_1 Medium 4 10 100
我想通過合並行中的值來合並“類別”列中的常見值並在“評論”列中取最高值。 在“尺碼”列“Kids_1”類別中,有中小尺碼,根據產品“A”,實際上應該是小尺碼。
我嘗試使用 groupby function,但無法獲得 output DataFrame 所需的 ZBA834ZB159A9A38729 相反,我得到了 output 如下,
Rating Reviews Price
Product Category Size
1 'A' Kids_1 small 4 25 100
2 Medium 4 10 100
3 'B' Adults Medium 3 15 200
4 'C' Kids_1 Medium 3 15 125
5 'D' Adults Large 2 10 250
生成的 DataFrame 應如下所示:
Product Category size Rating Reviews Price
1 'A' Kids_1 small 4 25 100
2 'B' Adults Medium 3 15 200
3 'C' Kids_1 Medium 3 15 125
4 'D' Adults Large 2 10 250
您可以使用Reviews
訂購 dataframe,按產品和類別分組,並使用head(1)
訂購 select 在每組的第一行。
df.sort_values('Reviews', ascending=False).groupby(['Product','Category']).head(1).reset_index(drop=True)
Product Category Size Rating Reviews Price
0 'A' Kids_1 small 4 25 100
1 'B' Adults Medium 3 15 200
2 'C' Kids_1 Medium 3 15 125
3 'D' Adults Large 2 10 250
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.