【问题标题】:Data frame with unique values from other data frame(pandas, python)具有来自另一个数据框(熊猫,python)的唯一值的数据框
【发布时间】:2017-08-11 15:04:39
【问题描述】:

我有一个数据框,其中我有重复的值(在每一列中没有重复的行)。 数据如下:

|Col1|Col2|Cold3|Col4|
|   1|   A| John| -10|
|   2|   A|Scoot| 234|
|   2|   B|Kerry| 346|
|   6|   B| Adam| -10|

我想从这个创建另一个 df,看起来像这样:

|Col1|Col2|Cold3|Col4|
|   1|   A| John| -10|
|   2|   B|Scoot| 234|
|   6|null|Kerry| 346|
|null|null| Adam|null|

当然,那些 null 可能是 NaN。

我可以遍历每一列并为每一列打印唯一值:

for col in df:
    print (df[col].unique())

返回 numpy 数组。 但我不确定如何将它写入新的数据框以使其看起来像我之前展示的那样。

【问题讨论】:

    标签: python pandas


    【解决方案1】:

    我认为你需要:

    df = df.apply(lambda x: pd.Series(x.unique()))
    print (df)
       Col1 Col2  Cold3   Col4
    0   1.0    A   John  -10.0
    1   2.0    B  Scoot  234.0
    2   6.0  NaN  Kerry  346.0
    3   NaN  NaN   Adam    NaN
    

    或者:

    df = df.apply(lambda x: pd.Series(x.drop_duplicates().values))
    print (df)
       Col1 Col2  Cold3   Col4
    0   1.0    A   John  -10.0
    1   2.0    B  Scoot  234.0
    2   6.0  NaN  Kerry  346.0
    3   NaN  NaN   Adam    NaN
    

    【讨论】:

    • 它似乎工作,我必须仔细检查,因为我有大数据集。谢谢!
    猜你喜欢
    • 2020-10-01
    • 1970-01-01
    • 2016-10-27
    • 1970-01-01
    • 1970-01-01
    • 2021-06-26
    • 1970-01-01
    • 2020-06-15
    • 2019-06-30
    相关资源
    最近更新 更多