python - Pandas 不小心设置了整列,而不是行的最后一个

标签 python pandas

这可能是一个愚蠢的问题,但我有点坚持这个问题。假设我有这个数据框:

   amount  amount_str  buy_order_id        id   midprice       price  
0  0.01545000  0.01545000     915692220  53424450  0.1286495  0.12947460   
0  1.65956203  1.65956203     915692330  53424458        NaN  0.12947460   
0  0.68427900  0.68427900     915692581  53424487        NaN  0.12947460   
0  0.22306417  0.22306417     915692632  53424491        NaN  0.12808629   
0  0.22306396  0.22306396     915692964  53424530        NaN  0.12808646   
0  2.31474046  2.31474046     915693081  53424535        NaN  0.12947460   
0  0.16808924  0.16808924     915694097  53424600        NaN  0.12808675   
0  5.30166589  5.30166589     915694819  53424629        NaN  0.12808710   
price_str  sell_order_id   timestamp  type  
0  0.12947460      915690988  1518045004     0  
0  0.12947460      915690988  1518045006     0  
0  0.12947460      915690988  1518045010     0  
0  0.12808629      915692647  1518045010     1  
0  0.12808646      915693012  1518045016     1  
0  0.12947460      915690988  1518045017     0  
0  0.12808675      915694117  1518045031     1  
0  0.12808710      915694862  1518045041     1

这是我的问题:每次程序从 bitstamp 获取新订单时,它都会将值附加到此数据帧,然后添加当前的中间价格。

我通常可以使用 df['midprice'] = value 来做到这一点;但是,这会为整个列设置它,而不仅仅是该条目。

我该如何制作才能将其添加到每行而不是整个列?

谢谢!

最佳答案

Pandas 擅长矢量化计算。

因此,df['midprice'] = value 将整个系列(或列)设置为固定值。

您似乎只想在另一个进程添加一行后立即修改最后中间价格值。这是实现这一目标的一种方法:

df.iloc[-1, df.columns.get_loc('midprice')] = value

关于python - Pandas 不小心设置了整列,而不是行的最后一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48674905/

相关文章:

python - 有没有办法知道 Unicode 字符串是否包含 Python 中的任何中文/日文字符?

python Pandas : Find percentage by dividing 2 arrays

python - 为 Pandas 创建自定义插值函数

python - 在循环python中更改数据框列中的值

python - 将具有可变长度逗号分隔值的 pandas Series 转换为 Dataframe

python - 在另一个模板中显示来自 Django View 的 HTML 表格

Python - 属性错误

python - 使用 Prometheus Python 客户端时出现时间戳错误 - "Error on ingesting samples that are too old or are too far into the future"

python - 没有频率的差异pandas.DateTimeIndex

python - Pandas:从互斥选择的多列中获取一行中特定单个值的列索引/标签