質問が基本的すぎる場合は、違反はありません。さらに情報が必要な場合はお知らせください。
私はタプルの正方形のタプルをpandas.DataFrameにクリーン/効率的/ Pythonの方法で変換するアイデアを探しています、つまり
_s =((1,0,0,0,),(2,3,0,0,),(4,5,6,0,),(7,8,9,10,))
_
_pandas.DataFrame
_に
_ 1 2 3 4
1 1 0 0 0
2 2 3 0 0
3 4 5 6 0
4 7 8 9 10
_
当然、このリストは、より多くのゼロが上三角に追加されて大きくなる可能性があります(sを行のタプルと考える場合)。
DataFrame(t)
は失敗したようです。
import pandas as pd
s = ((1,0,0,0,),(2,3,0,0,),(4,5,6,0,),(7,8,9,10,))
print pd.DataFrame(list(s))
# 0 1 2 3
# 0 1 0 0 0
# 1 2 3 0 0
# 2 4 5 6 0
# 3 7 8 9 10
print pd.DataFrame(list(s), columns=[1,2,3,4], index=[1,2,3,4])
# 1 2 3 4
# 1 1 0 0 0
# 2 2 3 0 0
# 3 4 5 6 0
# 4 7 8 9 10
タプルのタプルの代わりに、タプルのlistを渡します。
_In [13]: pd.DataFrame(list(s))
Out[13]:
0 1 2 3
0 1 0 0 0
1 2 3 0 0
2 4 5 6 0
3 7 8 9 10
_
data
がリストではなくタプルの場合、pd.DataFrame(data)
は異なるコードパスに従います。
パンダ開発者 Jeff Rebackの説明 :
list-of-tuplesは指定されたタイプです。Tuple-of-Tupleは、より多くの解析が必要になるネストされたタイプを示すことができるため、許可されていません。