<legend id='eGq5Q'><style id='eGq5Q'><dir id='eGq5Q'><q id='eGq5Q'></q></dir></style></legend>
    • <bdo id='eGq5Q'></bdo><ul id='eGq5Q'></ul>

    <tfoot id='eGq5Q'></tfoot>

      <small id='eGq5Q'></small><noframes id='eGq5Q'>

    1. <i id='eGq5Q'><tr id='eGq5Q'><dt id='eGq5Q'><q id='eGq5Q'><span id='eGq5Q'><b id='eGq5Q'><form id='eGq5Q'><ins id='eGq5Q'></ins><ul id='eGq5Q'></ul><sub id='eGq5Q'></sub></form><legend id='eGq5Q'></legend><bdo id='eGq5Q'><pre id='eGq5Q'><center id='eGq5Q'></center></pre></bdo></b><th id='eGq5Q'></th></span></q></dt></tr></i><div id='eGq5Q'><tfoot id='eGq5Q'></tfoot><dl id='eGq5Q'><fieldset id='eGq5Q'></fieldset></dl></div>

        为什么 pandas 的DataFrame可以相互改变?

        Why can pandas DataFrames change each other?(为什么 pandas 的DataFrame可以相互改变?)
        1. <legend id='otplP'><style id='otplP'><dir id='otplP'><q id='otplP'></q></dir></style></legend>
            <tbody id='otplP'></tbody>
        2. <i id='otplP'><tr id='otplP'><dt id='otplP'><q id='otplP'><span id='otplP'><b id='otplP'><form id='otplP'><ins id='otplP'></ins><ul id='otplP'></ul><sub id='otplP'></sub></form><legend id='otplP'></legend><bdo id='otplP'><pre id='otplP'><center id='otplP'></center></pre></bdo></b><th id='otplP'></th></span></q></dt></tr></i><div id='otplP'><tfoot id='otplP'></tfoot><dl id='otplP'><fieldset id='otplP'></fieldset></dl></div>
          • <bdo id='otplP'></bdo><ul id='otplP'></ul>
          • <small id='otplP'></small><noframes id='otplP'>

            <tfoot id='otplP'></tfoot>

                  本文介绍了为什么 pandas 的DataFrame可以相互改变?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  我正在尝试保留 pandas DataFrame的副本,以便我可以在保存原始数据帧的同时对其进行修改。但当我修改副本时,原始数据帧也会更改。例如:

                  df1=pd.DataFrame({'col1':['a','b','c','d'],'col2':[1,2,3,4]})
                  df1
                  
                      col1    col2
                      a       1
                      b       2
                      c       3
                      d       4
                  
                  df2=df1
                  df2['col2']=df2['col2']+1
                  df1
                  
                      col1    col2
                      a       2
                      b       3
                      c       4
                      d       5
                  
                  我将df2设置为等于df1,然后当我修改df2时,df1也会更改。为什么会这样?有没有办法保存 pandas DataFrame的备份(&Q;)而不修改它?

                  Python

                  这比数据帧深刻得多:您以错误的方式思考推荐答案变量。Python变量是指针,而不是桶。也就是说,当你写

                  >>> y = [1, 2, 3]
                  

                  您没有将[1, 2, 3]放入名为y的存储桶中;而是创建了一个指向[1, 2, 3]的名为y的指针。

                  当您随后写

                  >>> x = y
                  

                  您没有将y的内容放入名为x的存储桶中;您正在创建名为x的指针,该指针指向y所指向的相同的对象。因此:

                  >>> x[1] = 100
                  >>> print(y)
                  [1, 100, 3]
                  

                  因为xy指向同一个对象,所以通过一个指针修改它也会修改另一个指针。如果您想指向一个副本,则需要显式创建一个副本。对于列表,您可以这样做:

                  >>> y = [1, 2, 3]
                  >>> x = y[:]
                  >>> x[1] = 100
                  >>> print(y)
                  [1, 2, 3]
                  

                  通过DataFrames,您可以使用copy()方法创建副本:

                  >>> df2 = df1.copy()
                  

                  这篇关于为什么 pandas 的DataFrame可以相互改变?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

                  相关文档推荐

                  Split a Pandas column of lists into multiple columns(将 Pandas 的列表列拆分为多列)
                  How does the @property decorator work in Python?(@property 装饰器在 Python 中是如何工作的?)
                  What is the difference between old style and new style classes in Python?(Python中的旧样式类和新样式类有什么区别?)
                  How to break out of multiple loops?(如何打破多个循环?)
                  How to put the legend out of the plot(如何将传说从情节中剔除)
                  Why is the output of my function printing out quot;Nonequot;?(为什么我的函数输出打印出“无?)
                      • <bdo id='X0OXY'></bdo><ul id='X0OXY'></ul>
                        <tfoot id='X0OXY'></tfoot>
                        <legend id='X0OXY'><style id='X0OXY'><dir id='X0OXY'><q id='X0OXY'></q></dir></style></legend>

                        <small id='X0OXY'></small><noframes id='X0OXY'>

                            <tbody id='X0OXY'></tbody>

                        • <i id='X0OXY'><tr id='X0OXY'><dt id='X0OXY'><q id='X0OXY'><span id='X0OXY'><b id='X0OXY'><form id='X0OXY'><ins id='X0OXY'></ins><ul id='X0OXY'></ul><sub id='X0OXY'></sub></form><legend id='X0OXY'></legend><bdo id='X0OXY'><pre id='X0OXY'><center id='X0OXY'></center></pre></bdo></b><th id='X0OXY'></th></span></q></dt></tr></i><div id='X0OXY'><tfoot id='X0OXY'></tfoot><dl id='X0OXY'><fieldset id='X0OXY'></fieldset></dl></div>