今回、初めての質問です。Markdown記述含め、要を得ませんが、何卒よろしくお願いします。
Jupyter Notebookで勉強中です。
以下のリストファイルがあります。
名称は、outputとしています。
このリスト(カンマ区切り有り)のpandasのDataFrameへの取り込みで区切った上で、DataFrameの各コラムとしたいのですが、進まず、今回質問させていただいているところです。
事前のインポートライブラリは以下の通りです。
引用テキスト
import numpy as np
import pandas as pd
from pandas import Series,DataFrame
import string
- リスト
0 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, ...
1 [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, ...
2 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, ...
3 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, ...
4 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ...
データタイプは、print(type(output))とすると、
<class 'pandas.core.series.Series'>
と返されてきます。
上記リストに対し、
<コード>
In
df_amenities=pd.DataFrame(output,columns=["sign"])
Out
df_amenities
sign
0 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, ...
1 [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, ...
2 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, ...
3 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, ...
4 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ...
となり、これに対し、column[sign]でカンマ(,)により区切りされるよう、
In
df_amenities["sign"]=df_amenities["sign"].str.split(",", expand=True)
としたところ、エラーなく処理はされたものの、
Out
df_amenities
sign
0 NaN
1 NaN
2 NaN
3 NaN
4 NaN
となり、全てデータなし状態になってしまいました。
当方としては、最終的には、pandasのDataFrameとなり、以下のイメージのようなものが出来ることろを期待しています。
※0,1の数字展開自体は、あくまで例示です。
なお、columnのラベルは、最終的には、固有名詞(具体的には、不動産の設備名)に置き換える予定です。
横方向は、各不動産で、要は各不動産毎の設備を0or1で把握したい、というものです。
区切りされる0or1のデータ数は、columnのラベル数と一致する筈です。
各不動産毎の設備有無を0,1化したdataframeの完成を目指しています。
全くの初心者で、要を得ないところばかりですが、ご教授をいただけますと、大変ありがたいです。
よろしくお願いします。

回答2件
あなたの回答
tips
プレビュー