Как я могу сохранить данные в переменную Dataframe в операторе цикла? - PullRequest
0 голосов
/ 07 октября 2018
I write:


 sortstocks['stockCode']=myStock
    sortStocks['ratio']=ratio

Это не работает.Больше кода как удар:

 for idx, myStock in enumerate(stockList):
    close=history(myStock, ['close'], 500, '1d', False, 'pre' )
    if len(close)>499:
       ....

       if (MA10Yesterday < MA20Yesterday) and (MA10today > MA20today) and (MA5today> MA10today) and (MA5today < MA58today):
          for i in range(2,500):
              if ...
                 sortstocks['stockCode']=myStock
                 sortStocks['ratio']=ratio
I'm told that sortstocks is not defined, but I have defined in initialize with sortStocks=pd.DataFrame(columns=['stockCode','ratio']) 

Спасибо за помощь Нильса.Теперь я переписываю свой код как:

             sortStocks.loc[idx,'stockCode']=myStock
             sortStocks.loc[idx,'ratio']=ratio

Когда я запускаю его, я получаю данные, как показано ниже:

  0  stockCode     ratio
0     stockCode        NaN       NaN
1         ratio        NaN       NaN
64          NaN  000153.SZ  0.834303
1518        NaN  300171.SZ  0.631573
1774        NaN  300430.SZ  0.662017

Я хочу получить вывод, подобный этому:

  stockCode     ratio
     000153.SZ  0.834303
     300171.SZ  0.631573
     300430.SZ  0.662017

Что мне делать?

1 Ответ

0 голосов
/ 07 октября 2018

Если ваш код выше является правильной копией кода, который вы запустили, то ошибка в опечатке в 3-ей последней строке:

sortstocks['stockCode']=myStock

должно быть:

sortStocks['stockCode']=myStock

(с заглавной буквы 'S' для акций)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...