将列表附加为空数据框的行

我正在尝试将一个数据框中的行添加到另一个空数据框中;


for index, rows in data.iterrows():

    new = list(rows)

    var = new[0]


    for i in ran:

        if var in ran:

            empty_df.append(new) 

我选择了一个随机的第一列条目,例如“image1.png”,然后想要选择第一列中包含“image1”的所有行。然后我想将这些行移动到一个新的数据框。


new = ['image1.png', 1023, 554, 1126, 646, 'nucleus'] 

ran = 'image1.png'

当我想要的时候,输出是一个空的数据框;


image1.png, 1023, 554, 1126, 646, nucleus

image1.png, 1023, 554, 116, 646, nucleus

image1.png, 103, 544, 1126, 6, nucleus

image1.png, 10, 354, 1556, 56, nucleus

image1.png, 13, 55, 1216, 46, nucleus

image1.png, 103, 54, 116, 326, nucleus 

有人能帮忙吗?


狐的传说
浏览 185回答 3
3回答

一只甜甜圈

您可以通过更改来修复您的代码: empty_df.append(new)到: empty_df = empty_df.append(new)但我认为你不应该那样做。您可以更轻松地复制整个数据框 empty_df = data.copy()

哔哔one

要更改列,请假设存储图像名称的列的名称是imageName变量,而运行的是变量。new_df = data.loc[data['imageName'] == ran ] #if ran is a variable

jeck猫

我相信您所做的所有事情都可以通过基于以下条件过滤新的 DF 来简化 ranempty_df = data[data.iloc[:,0] == ran]empty_df.head()Output:    0   1   2   3   4   50   image1.png  1023    554 1126    646 nucleus1   image1.png  1023    554 116 646 nucleus2   image1.png  103 544 1126    6   nucleus3   image1.png  10  354 1556    56  nucleus4   image1.png  13  55  1216    46  nucleus
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python