Python 从Dataframe中提取不同的值,并将它们插入到具有相同列名的新Dataframe中

Python 从Dataframe中提取不同的值,并将它们插入到具有相同列名的新Dataframe中,python,pandas,dataframe,Python,Pandas,Dataframe,使用python 3.7、pandas 1.1.3、Anaconda Jupyter笔记本 我是python新手,我有以下数据框架 DF_1 我只想从“Name”列中提取不同的值,并创建一个新的数据帧(df_2),然后用相同的列名插入其中 输出df_2应该如下所示 Name AAA BBB CCC 试试这个: df_2 = DF_1[['Name']].drop_duplicates() 那么: DF_2 = pd.DataFrame(DF_1.Name.unique(), columns=

使用python 3.7、pandas 1.1.3、Anaconda Jupyter笔记本

我是python新手,我有以下数据框架

DF_1

我只想从“Name”列中提取不同的值,并创建一个新的数据帧(df_2),然后用相同的列名插入其中

输出df_2应该如下所示

Name
AAA
BBB
CCC
试试这个:

df_2 = DF_1[['Name']].drop_duplicates()
那么:

DF_2 = pd.DataFrame(DF_1.Name.unique(), columns=['Name'])

您还可以使用
np.unique
,这比
pd.Series.unique()
pd.Series.drop_duplicates()


因此,你可能不需要一个数据帧系列将是一个完美的适合

df2=pd.Series(df['name'].unique(),name='name')
如果你想要一个数据帧,这里是另一种方法

df.drop("num",axis=1).drop_duplicates()

哇,真管用,我可以知道为什么要用两个[]吗?当然可以。用一个括号从数据框中选择
pd.Series
。有两个括号-您选择的是
pd.DataFrame
格式的特定列。如果有帮助,请确保将答案标记为正确:)
df2=pd.Series(df['name'].unique(),name='name')
df.drop("num",axis=1).drop_duplicates()