python - 我可以根据 python 数据框中的相同列值更新列的值吗?
问题描述
我有一个数据框来捕获访问网页的人的特征。页面中每个用户花费的时间列表是我作为输入获得的特征之一。我想用列表的最大值更新此列。有没有办法可以做到这一点?
假设我的数据是:
df = pd.DataFrame({Page_id:{1,2,3,4}, User_count:{5,3,3,6}, Max_time:{[45,56,78,90,120],[87,109,23],[78,45,89],[103,178,398,121,431,98]})
我想要做的是将df中的Max_time列转换为Max_time:{120,109,89,431}
我不应该添加另一列来单独计算最大值,因为无法更改此表结构。
我尝试了以下方法:
for i in range(len(df)):
df.loc[i]["Max_time"] = max(df.loc[i]["Max_time"])
但这并没有像我预期的那样改变列。有什么我错过的吗?
解决方案
df = pd.DataFrame({'Page_id':[1,2,3,4],'User_count':[5,3,3,6],'Max_time':[[45,56,78,90,120],[87,109,23],[78,45,89],[103,178,398,121,431,98]]})
df.Max_time = df.Max_time.apply(max)
结果:
Page_id User_count Max_time
0 1 5 120
1 2 3 109
2 3 3 89
3 4 6 431
推荐阅读
- matlab - 如何对矩阵中的特定值求和?
- docker - 当我控制我的 dev、staging 和 prod 环境时,为什么要使用 Docker?
- swift - 在 Swift 中从字符串创建一个新字符
- c - 使 makefile 可执行
- ios - 如何消除PDFView“页面阴影”?
- c - C 程序只有在 GCC 中执行后才会终止
- bash - Bash - 编辑结构化文本
- php - PHP登录表单不起作用,我该怎么做才能解决它?
- html - 使用引用类将 css 应用到目标类
- java - 使用 A 的 Value 中的数据将内容从 HashMap A 移动到 HashMap B 作为新 Key