“Pandas Group by DataFrame” kodu Cevaplar
Pandas Groupby
# usage example gb = df.groupby(["col1", "col2"]) counts = gb.size().to_frame(name="counts") count ( counts.join(gb.agg({"col3": "mean"}).rename(columns={"col3": "col3_mean"})) .join(gb.agg({"col4": "median"}).rename(columns={"col4": "col4_median"})) .join(gb.agg({"col4": "min"}).rename(columns={"col4": "col4_min"})) .reset_index() ) # to create dataframe keys = np.array( [ ["A", "B"], ["A", "B"], ["A", "B"], ["A", "B"], ["C", "D"], ["C", "D"], ["C", "D"], ["E", "F"], ["E", "F"], ["G", "H"], ] ) df = pd.DataFrame( np.hstack([keys, np.random.randn(10, 4).round(2)]), columns=["col1", "col2", "col3", "col4", "col5", "col6"] ) df[["col3", "col4", "col5", "col6"]] = df[["col3", "col4", "col5", "col6"]].astype(float)
Pandas Group by DataFrame
In [21]: g1.add_suffix('_Count').reset_index() Out[21]: Name City City_Count Name_Count 0 Alice Seattle 1 1 1 Bob Seattle 2 2 2 Mallory Portland 2 2 3 Mallory Seattle 1 1
Groupby
df['frequency'] = df['county'].map(df['county'].value_counts()) county frequency 1 N 5 2 N 5 3 C 1 4 N 5 5 S 1 6 N 5 7 N 5