python - 如何修改熊猫系列中的值
问题描述
所以我有一个带有一些值的熊猫系列,我在一个循环中传递了几次。每次我想在该索引的系列中添加一些新的东西。
例如,我有一个名为 df 的大数据框。然后我创建一个新列并尝试在名为 someList 的列表的交互中满足条件时对其进行修改
df["mySeries"] = ""
for a,b in itertools.combinations(someList, 2):
if int1>0.5:
df["mySeries"][someList.index(a)] = df["mySeries"][someList.index(a)], b
本质上我想将另一个字符串连接到现有系列。我似乎找不到最好的方法来做到这一点。我写的方式很好,但也给了我一个熊猫警告:
"A value is trying to be set on a copy of a slice from a DataFrame"
并且输出不干净,因为它看起来像这样: (('', 61), 94) 我希望它看起来更像 61, 94。我尝试过 set_value,但这会覆盖系列中的现有数据。
解决方案
正如回溯所暗示的,您需要使用.loc
.
>>> df.loc[someList.index(a), "mySeries"] = ...
推荐阅读
- python - 在python中调用带有参数的bash脚本
- spring - Spring中的代理使用
- python - 努力尝试将 csv 转换为数据库 [Python]
- java - 错误:使用 .setFont() 时找不到符号
- javascript - angular 4 typeahead 仅显示在对象数组中匹配的属性?
- python-3.x - 如何知道firestore python中是否存在文档?
- spring-boot-gradle-plugin - 如何注入分机。spring-boot gradle 插件属性中的属性
- angular-material2 - 如何针对 Angular 的材料输入调整链接?
- c# - int 和 long 重载的性能损失
- javascript - 这是使用 Ajax 的正确方法吗?