我需要重写一些已有的代码。
它会插入缺少“标准偏差”列的列。为此,它将检查前一列是否为“变量”列,以及其后是否已存在“标准差”列。
现在,我正在使用一个while循环,该循环遍历检查 if (getIntent() != null){
String spinner1Value = getIntent().getStringExtra("data_spinner_1");
String spinner2Value = getIntent().getStringExtra("data_spinner_2");
}
和df.iloc[1,x]
的列。
df.iloc[1,x+1]
数据框的片段(很难理解):
i = 7
j = len(df.columns)-1
while i < j:
if df.loc[1,i] != 'Standard Deviation' and df.loc[1,i] != 'Replicates' and df.loc[1,i] != 'Method':
if df.loc[1,i+1] != 'Standard Deviation':
df.insert(i+1,'Standard Deviation',np.nan)
df.columns = pd.RangeIndex(df.columns.size)
df.loc[1,i+1]='Standard Deviation'
i+=1
j = len(df.columns)-1
df.insert(len(df.columns),'Standard Deviation',np.nan)
df.columns = pd.RangeIndex(df.columns.size)
df.loc[1,len(df.columns)-1]='Standard Deviation'
现在代码可以正常工作并给出预期的结果。我只想以更有效/更优雅的方式重写它。
如果不遍历指定检查50 51 52 53 54 55 56 57 58
0 Pour Point (°C) Pour Point (°C) Pour Point (°C) Pour Point (°C) Boiling Point Distribution- Temperature (°C) Boiling Point Distribution- Temperature (°C) Boiling Point Distribution- Temperature (°C) Boiling Point Distribution- Temperature (°C) Boiling Point Distribution- Temperature (°C)
1 Pour point Standard Deviation Replicates Method Initial Boiling Point 5% 10% 15% 20%
2 NaN NaN NaN NaN NaN NaN NaN NaN NaN
3 < -25 NaN NaN ASTM D97 NaN 35 52 70 88
4 < -25 NaN NaN ASTM D97 NaN 56 84 104 135
5 -6 NaN NaN ASTM D97 NaN 115 166 224 259
6 24 NaN NaN ASTM D97 NaN 279 303 322 339
和df.iloc[1,i]
的列,我不知道该怎么做。