python - 在遍历 dict_values 或列表中的数据帧时访问下一个 df ("v+1")
问题描述
我有一本字典,其中的值是数据框。我想根据与数据帧“v+1”的比较来修改数据帧“v”。如果我尝试这样的事情(所有代码仅供参考):
for v in dfs_dict.values():
if v['Date'][0] == v+1['Date'][0]:
v+1['Day'] = v['Day']
然后我不出所料地得到一个错误。具体来说:
TypeError: 'int' object is not subscriptable
如果我将这些数据帧存储在一个列表中并循环它,我会得到基本相同的错误。而且,当然,如果我改变方法以使用“v-1”代替,也会出现同样的错误。
我还尝试了一种方法,将数据帧列表转换为迭代器并用于next()
访问“v+1”数据帧。当我这样做时,我没有收到错误,但它也没有给我我需要的结果(修改后的 df 列值)。不过,我对这种方法没有太多经验iter
,所以它可能完全不适合我正在尝试做的事情,但为了完整性:
dfs_iter = iter(dataframes)
for i in dfs_iter:
if i['Date'][0] == (next(dfs_iter)['Date'][0]):
(next(dfs_iter)['Day']) = i['Day']
有没有人对我如何实现我的目标有任何 pythonic 建议?谢谢大家。
解决方案
您的代码看起来很复杂。这种更简单的方法怎么样?
for element in iter(data):
process(element)
推荐阅读
- python-3.x - 如何使用 python api 对批量输入进行 TensorRT 7.0 推理?
- django - 使用 Django Form 将文件保存到特定文件夹
- python - 在 model.fit 中使用带有交错的 tf.data.Dataset 时模型训练卡住
- spring-boot - 引起 - java.io.FileNotFoundException - /testfolder/abc.txt(是一个目录)
- c++ - 对于复杂的向量,默认 d'tor 是否足够?
- java - 进行发布请求改造时,我得到空值
- javascript - 为什么 calc 没有在 onclick 事件属性中定义?
- python - Google Colab GPU TensorFlow 1.x
- visual-studio-code - VSCode 问题:在终端中有效,但在 VSCode 中无效
- javascript - 每当 url 更改时重新加载页面 wix