以下の内容はhttps://anton0825.hatenablog.com/entry/2017/11/10/000000より取得しました。


DataFrame.locで複数列を一度に代入できない

以下のようなコードで、あるDataFrameの4つの列に別のDataFrameの値を代入しようとしたが、できなかった(代入してもsalesの値がNaNのまま)

sales.loc[mask, [SALES_COUNT_MA14, SALES_COUNT_MMAX14, SALES_COUNT_MMIN14, SALES_COUNT_MS14, SALES_COUNT_MM14]] = merged.iloc[:, 2:]

以下のように1列のみが対象なら代入できる。

sales.loc[mask, SALES_COUNT_MA14] = merged.iloc[:, 2]

以下のように.locの代わりに[]を使って代入先の列を指定すると代入できる。

sales = sales[mask]
sales[[SALES_COUNT_MA14, SALES_COUNT_MMAX14, SALES_COUNT_MMIN14, SALES_COUNT_MS14, SALES_COUNT_MM14]] = merged.iloc[:, 2:]

謎な仕様だな。。使い方が間違ってるのかな。




以上の内容はhttps://anton0825.hatenablog.com/entry/2017/11/10/000000より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14