pythonデータ処理——dataframe内の行列分割
1476 ワード
ある場合、dataframeのある列の中では比較的複雑なデータ構造である.例えば、dict、またはlist、またはlist of listのような、実はすべての良い方法があり、複数のforサイクルを使う必要がない.ここで2つの例を置く.
Spliting a list in a Pands cell into multile columns
How to convert lists to a dataframe e
Covert a list of lists into a Pands Dataframe e
簡単な関数があります.
How to split a list inside a Dataframe cell into rows in Pands
いいでしょう
更新:
また、一列に出てくるのが上記のリストリストリストではなく、dictであれば、このラインコードを使っても良いです.
Spliting a list in a Pands cell into multile columns
dataframe
df = pd.DataFrame(data=[[[8,10,12], 'A'],
[[7,9,11], 'B']])
:
0 1 2 3
0 8 10 12 A
1 7 9 11 B
実は簡単です.一行のコードだけで解決できます.df[0].apply(pd.Series)
# 0 1 2
#0 8 10 12
#1 7 9 11
Update: To keep other columns of the data frame, you can concatenate the result with the columns you want to keep:
pd.concat([df[0].apply(pd.Series), df[1]], axis = 1)
# 0 1 2 1
#0 8 10 12 A
#1 7 9 11 B
他にもいくつかのブログがあります.参考にしてください.How to convert lists to a dataframe e
Covert a list of lists into a Pands Dataframe e
簡単な関数があります.
nums =
[[1,2],
[3,4]]
a = sum(nums,[])
複数の列に変換する以外に、行に変換できます.How to split a list inside a Dataframe cell into rows in Pands
いいでしょう
更新:
また、一列に出てくるのが上記のリストリストリストではなく、dictであれば、このラインコードを使っても良いです.
{'bids': [[1.0002, 612.52], [0.9998, 11.6], [0...
1 {'bids': [[11321.12, 0.005634999999999999], [1...
2 {'bids': [[0.46072, 1500], [0.46061, 1500], [0...
3 {'bids': [[11329.89, 0.0011], [11324.46, 0.069...
4 {'bids': [[0.027233, 0.606], [0.027232, 0.5660...
pd.DataFrame(list(meta_df['meta_data']))