Pandas:了解生成視圖與副本的規則
識別視圖和副本的混亂
確定Pandas DataFrame 中的選擇結果是視圖還是副本可能會令人困惑。這種混亂主要源自於各種索引操作及其不同的行為。一般規則
具體範例
為比較賦值:
<code class="python">df[df.C <= df.B] = 7654321</code>分配此修改了原始DataFrame df,因為索引器.loc 用於就地設定值。
鍊式索引:
<code class="python">df[df.C <= df.B].loc[:, 'B':'E']</code>
不鼓勵此操作,因為它可能不可靠。為了避免潛在問題,請改用以下語法:
<code class="python">df.loc[df.C <= df.B, 'B':'E']</code>
基於查詢修改值
要修改a 中的所有值滿足特定查詢條件的DataFrame,使用loc索引器以查詢條件作為參數。例如:<code class="python">df.loc[df.C <= df.B, 'E'] = 40</code>此分配只會變更 df.C 小於或等於 df.B 的行的「E」欄位中的值。
以上是Pandas:從 DataFrame 中選擇何時建立視圖而不是副本?的詳細內容。更多資訊請關注PHP中文網其他相關文章!