首页 > 解决方案 > 将过滤的数据框行附加到新的数据框python

问题描述

我有一个包含一些虚假数据的熊猫数据框(dft)。我找到了一种方法来识别包含虚假数据的行并用 drop 删除它们。我还不能做的是用虚假数据制作一个新的数据框,以检查数据。下面是我过滤数据的代码。请注意,我的数据框(dft)是一个 2 列数据框,过滤后大约有 20k 行。

filtered_rows1=dft[(dft["Solarangle"] < 29) & (dft["Solarangle"] >2)].index  #indexies of outliers (angle values between 5 and 27)
filtered_rows2=dft[(dft["Solarangle"] > -29) & (dft["Solarangle"] <-2)].index  #indexies of outliers (angle values between -27 and -5)  
filtered_rows3=dft[dft["Solarangle"] > 32].index # indexies of outlers (angle values greator than 32)
filtered_rows4=dft[dft["Solarangle"] < -32].index # indexies of outlers (angle values less than -32)

我想添加一些代码来制作过滤(虚假)数据的新数据框。

类似的东西

df_fi=pd.DataFrame(columns=dft.columns)
df_fi.append(dft[filtered_rows1], ignore_index = True)
df_fi.append(dft[filtered_rows2], ignore_index = True)
df_fi.append(dft[filtered_rows3], ignore_index = True)
df_fi.append(dft[filtered_rows4], ignore_index = True)

在以下代码行中删除虚假数据之前

# remove (drop) identified items
dft.drop(filtered_rows1, inplace=True)
dft.drop(filtered_rows2, inplace=True)
dft.drop(filtered_rows3, inplace=True)
dft.drop(filtered_rows4, inplace=True)

标签: python-3.xdataframe

解决方案


推荐阅读