我有一只大熊貓 DF ( 4 X 96103)。根據第一行值的一些條件,我想將 DF 的一個子集提取到一個較小的 DF_subset。對于單個案例,這可以通過多種方式完成,并且不會在計算上造成損害。但是我需要對數千個檔案應用這個操作(相同的條件和相同的操作)。這個應用程式最有效的方法是什么。下面是我所做的一個片段,
tt = []
x1=[]
x2=[]
x3=[]
for i in range(np.shape(DF)[1]):
if ((float(DF.iloc[0,i]) > -5.0) and (float(DF.iloc[0,i])) < 15.0):
tt.append(DF.iloc[0,i] )
x1.append(DF.iloc[1,i] )
x2.append(DF.iloc[2,i] )
x3.append(DF.iloc[3,i] )
X = (np.concatenate((tt,x1,x2,x3),axis=0))
X = pd.DataFrame(np.reshape(X,(4,-1)))
原始 DF 如下所示,紅色標記區域是我希望 DF_subset 的示例

uj5u.com熱心網友回復:
你需要transposedf 然后select按條件。采用:
df = DF.T
df[(df[0].astype(float)) > -5.0)&(df.iloc[0].astype(float)) < 15.0)]
示例:輸入 df:

輸出df:

示例代碼:
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.rand(3,10))
df2 = df.T
df2[(df2[0]>.2)&(df2[0]<.7)]
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/433543.html
標籤:数组 熊猫 数据框 麻木的 熊猫-groupby
