私の質問を合理化しました。私は入力価格のタイプをフィルタリングするメソッドを作成しようとしています。以下のデータのサンプルである:パンダで空のパラメータを入力する方法.value()function
Open High Low Close
1189.73 1214.01 1188.63 1198.72
1198.67 1201.41 1193.77 1196.35
1195.69 1203.60 1170.78 1176.45
1176.47 1185.01 1172.68 1176.65
adj_price_list = df.values[1:5, [1,2,3,4]].tolist()
['1189.73', '1214.01', '1188.63', '1198.72']
['1198.67', '1201.41', '1193.77', '1196.35']
['1195.69', '1203.6', '1170.78', '1176.45']
['1176.47', '1185.01', '1172.68', '1176.65']
目的:
- O/H/L/C入力選択をフィルタリングする賢い方法。現在、複数のif-elseステートメントを使用しています。
問題:私はrnsoするには、パラメータ
adj_price_list = df.values[1:5, [1,4]].tolist() ['1189.73', '1198.72'] #Open and Close prices adj_price_list = df.values[1:5, [2,3]].tolist() ['1214.01', '1188.63'] #High and Low prices
として 'なし' を使用することはできません。
def GetList(px_open=True, px_high=True, px_low=True, px_close=True):
lst = [px_open, px_high, px_low, px_close]
return [(i+1) if lst[i] else None for i in range(4)]
get_list = GetList(False,True,False,True) #Output: [None, 2, None, 4]
get_price_list = df.values[1:5, get_list].tolist()
IndexError: only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indices
こんにちはColdspeed、助言のおかげで。より具体的にするために私の質問を編集しました。ありがとう! – pappusenpai
良い! Upvoted。もう少し情報が必要です。このデータの期待される出力は? –
質問を完全に変更したのはなぜですか?何か別のものが必要だった 'if-else'ステートメントはどこにありますか?編集内容を追加できますが、元の質問から大幅に削除することはできません。 – rnso