我试图将行从一个数据框添加到另一个空数据框;
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
有人可以帮忙吗?
答案 0 :(得分:1)
您可以通过以下方式修正代码:
empty_df.append(new)
收件人:
empty_df = empty_df.append(new)
但是我不认为你应该这样做。使用
,您可以更轻松地复制整个数据框 empty_df = data.copy()
答案 1 :(得分:0)
我相信您可以通过基于ran
过滤新的DF来简化您的所有工作
empty_df = data[data.iloc[:,0] == ran]
empty_df.head()
Output:
0 1 2 3 4 5
0 image1.png 1023 554 1126 646 nucleus
1 image1.png 1023 554 116 646 nucleus
2 image1.png 103 544 1126 6 nucleus
3 image1.png 10 354 1556 56 nucleus
4 image1.png 13 55 1216 46 nucleus
答案 2 :(得分:0)
要更改列用途
假设存储图像名称的列的名称为imageName
,而ran是变量。
new_df = data.loc[data['imageName'] == ran ] #if ran is a variable