Python 从现有dataframe的某些列创建新dataframe
我已经读取并加载了一个csv文件到pandas数据框中,希望对数据框进行一些简单的操作。我不知道如何基于从原始数据帧中选择的列创建新的数据帧。我的尝试:Python 从现有dataframe的某些列创建新dataframe,python,pandas,dataframe,Python,Pandas,Dataframe,我已经读取并加载了一个csv文件到pandas数据框中,希望对数据框进行一些简单的操作。我不知道如何基于从原始数据帧中选择的列创建新的数据帧。我的尝试: names = ['A','B','C','D'] dataset = pandas.read_csv('file.csv', names=names) new_dataset = dataset['A','D'] 我想用原始数据框中的a列和D列创建一个新的数据框。它被称为子集-在[]中传递的列列表: dataset = pandas.rea
names = ['A','B','C','D']
dataset = pandas.read_csv('file.csv', names=names)
new_dataset = dataset['A','D']
我想用原始数据框中的a列和D列创建一个新的数据框。它被称为
子集
-在[]
中传递的列列表:
dataset = pandas.read_csv('file.csv', names=names)
new_dataset = dataset[['A','D']]
什么是相同的:
new_dataset = dataset.loc[:, ['A','D']]
如果只需要过滤输出,将参数usecols
添加到:
编辑:
如果仅使用:
new_dataset = dataset[['A','D']]
使用一些数据处理,显然可以得到:
试图在数据帧切片的副本上设置值。尝试改用.loc[row\u indexer,col\u indexer]=value 如果稍后修改
new\u dataset
中的值,您将发现修改不会传播回原始数据(dataset
),并且不会发出警告
如上所述,添加删除警告:
new_dataset = dataset[['A','D']].copy()
将感兴趣的列传递给子选择:
new_dataset=dataset[['a','D']]
请注意,如果要对副本进行操作,请调用copy()
:new_dataset=dataset[['a','D']]。copy()
new_dataset = dataset[['A','D']].copy()