EMT*_*EMT 1 python list dataframe pandas
我pd.DataFrame其中一列包含lists值。我想创建另一列,其中仅包含该列中最常见的值。示例数据框:
col_1
0 [1, 2, 3, 3]
1 [2, 2, 8, 8, 7]
2 [3, 4]
Run Code Online (Sandbox Code Playgroud)
预期的数据框是
col_1 col_2
0 [1, 2, 3, 3] [3]
1 [2, 2, 8, 8, 7] [2, 8]
2 [3, 4] [3, 4]
Run Code Online (Sandbox Code Playgroud)
我尝试做
from statistics import mode
df['col_1'].apply(lambda x: mode(x))
Run Code Online (Sandbox Code Playgroud)
但它显示了该栏中最常见的列表。
我还尝试mode直接在该列上使用 pandas 函数,它也没有帮助。有什么方法可以找到最常见的值吗?
或者只是使用multimode统计模块。
df['col_2'] = df['col_1'].apply(lambda x: multimode(x))
Run Code Online (Sandbox Code Playgroud)
col1 col2
0 [1, 2, 3, 3] [3]
1 [2, 2, 8, 8, 7] [2, 8]
2 [3, 4] [3, 4]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
161 次 |
| 最近记录: |