Pandas 将指定列提取到新的DataFrame中作为副本 |
您所在的位置:网站首页 › 怎么把其中一个表格单独保存 › Pandas 将指定列提取到新的DataFrame中作为副本 |
Pandas 将指定列提取到新的DataFrame中作为副本
在本文中,我们将介绍如何使用Pandas将指定的列提取并创建一个新的DataFrame,使得我们可以随意修改这个新DataFrame,而原始的DataFrame不会受到影响。 阅读更多:Pandas 教程 1. 提取单个列我们可以使用Pandas的DataFrame对象中的[]操作符来提取单个列。例如,让我们考虑一个具有以下数据列的DataFrame: Name Age Country John 25 USA Sally 32 Canada Tim 18 UK要提取“Age”列并将其存储在另一个DataFrame中,我们可以执行以下代码: import pandas as pd data = {'Name':['John', 'Sally', 'Tim'], 'Age':[25, 32, 18], 'Country':['USA', 'Canada', 'UK']} df = pd.DataFrame(data) age_df = df[['Age']].copy()执行结果将是一个只包含“Age”列的新DataFrame,即age_df: Age 25 32 18请注意,我们必须使用copy()方法来创建新的DataFrame副本,以免更改原始DataFrame。 2. 提取多个列要提取多个列,我们可以使用与提取单个列相同的[]操作符,并将列名列表作为参数传递。例如,让我们考虑以下DataFrame,其中包含以下数据列: Name Age Country Gender John 25 USA M Sally 32 Canada F Tim 18 UK M要提取“Age”和“Gender”列并将它们存储在另一个DataFrame中,我们可以执行以下代码: age_gender_df = df[['Age','Gender']].copy()结果将是一个只包含“Age”和“Gender”列的新DataFrame,即age_gender_df: Age Gender 25 M 32 F 18 M 3. 提取连续的列要提取连续的列,我们可以使用loc或iloc属性。例如,让我们考虑以下DataFrame,其中包含以下数据列: Name Age Country Gender John 25 USA M Sally 32 Canada F Tim 18 UK M要提取从“Age”列到“Gender”列之间的所有列,我们可以使用以下代码: age_to_gender_df = df.loc[:, 'Age':'Gender'].copy()结果将是一个只包含从“Age”到“Gender”(包括这两列)的新DataFrame,即age_to_gender_df: Age Country Gender 25 USA M 32 Canada F 18 UK M请注意,在使用loc方法时,我们必须指定所有我们想要包含在新DataFrame中的列名称范围,并使用:来表示所有行。 4. 取消副本要求如果我们只想在原始DataFrame中操作特定列的值,就不需要创建新的DataFrame副本。我们可以直接对特定列进行操作并将结果存储回原始DataFrame中。例如: df['Age'] = df['Age'] + 5这将使每个人的年龄加上5岁。 总结在Pandas中,我们可以轻松地从现有的DataFrame中提取特定列,以创建一个新的DataFrame副本。我们还可以使用loc或iloc属性来提取连续的列。如果只需要在原始DataFrame中对特定列进行操作,则无需创建副本。这样,我们可以更轻松地管理我们的数据,并对其进行必要的处理。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |