python - 替换从某一行开始的列
问题描述
考虑这个例子:
rates_frame = rates_frame[['new_date', 'new_time', 'open', 'high', 'low', 'close', 'tick_volume']]
rates_frame
rates_frame.head()
产生这个输出:
我想用从第 0 行open
开始的列中的值替换从第 1 行close
开始的列中的值。
解决方案
您正在寻找shift
. pandas
这会将特定列中的值移动指定数量的句点
你只需要这个
rates_frame['open_new'] = rates_frame['close'].shift(1)
PS:从股市的角度来看,我认为你不应该这样做。今天的开盘价不一定等于前一天的收盘价。您可以查看向上空开、向下空开和不变等主题。只有在后一种情况下,您所做的才是正确的。
推荐阅读
- typescript - 单个 TypeScript 索引类型中的多个值类型
- python - 将一系列值设置为条形图的变量 - python
- node.js - 在 Mongodb 中使用 $function 获取请求
- python-3.x - Python 熊猫 - 处理
- wordpress - 通过 IP 地址访问时,Wordpress 网站重定向到 localhost
- linux - 如何获取某个linux命令的所有可能值?
- mysql - MySQL连接两个表并添加额外的列
- r - R table1 包:指定字体大小和列宽?
- apache-spark - 将所有列从 StringType 转换为 DoubleType
- clickhouse - Clickhouse 结果有时显示空行