這是我的示例 csv
ID DESC
1 1 Car
2 2 Boat
3 3 Bike
4 4 Car
5 5 Car
6 6 Car
7 7 Car
當我這樣做時,.value_counts()我得到
5
1
1
我想得到
ID DESC COUNT
1 Car 5
2 Boat 1
3 Bike 1
這是我目前的嘗試
import pandas as pd
path = "C:\Matching_Desc.csv"
df = pd.read_csv(path, encoding= 'unicode_escape')
df2 = df['DESC'].value_counts().index.tolist()
df3 = df['DESC'].value_counts()
df2 = pd.DataFrame(df2)
df3 = pd.DataFrame(df3)
df3.columns = ['COUNT']
df2.columns = ['DESC']
frames = [df2,df3]
result = pd.concat(frames)
result.to_csv("C:\matching.csv", index=False)
這沒有正確連接兩個 df 并且沒有 ID
有什么建議么?
uj5u.com熱心網友回復:
您可以使用 agroupby.agg代替value_counts:
(df.groupby('DESC', as_index=False, sort=False)
.agg(**{'ID': ('ID', 'first'),
'COUNT': ('ID', 'size')
})
)
輸出:
DESC ID COUNT
0 Car 1 5
1 Boat 2 1
2 Bike 3 1
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/513794.html
標籤:Python熊猫数据框
