我有一个数据帧df,其中包含一个功能,“下限”,“上限”和“步长”。
“上限”包含5个唯一值,例如:
In [1]
df['Upper Bound'].unique()
Out [1]
array([ 0.3 , 0. , 0.2 , 0.1 , 0.15])
然而,当我访问df中的特定位置时,实际值是不同的。例如:
In [2]
df.iloc[1]['Upper Bound']
Out [2]
0.29999999999999999
这个问题遍布整个df。例如,我试图生成这些数组的列表(“资产”),每个数组表示“下限”到“上限”的“步长”值范围。
In[3]
assets = []
for i in range(0, len(df['Lower Bound'])-1):
lst = (np.arange(df.iloc[i]['Lower Bound'],df.iloc[i]['Upper Bound']+0.01,df.iloc[i]['Step Size']))
assets.append(lst.tolist())
df的第一行是[0.1,0.3,0.1]。然而,上述操作的结果是:
Out[3]
[[0.1, 0.2, 0.30000000000000004],
...
是什么给出的?