文字列のdataframeが全部nanで出力の謎
質問
pythonで文字列のdataframeであるf2にカラムをつけて文字列のdataframeのf3に
したいのですが、f3を出力したら全部nanになってしまいます。何故でしょうか?
ソースコード
f3=DataFrame(f2,columns=['data1','data2'],dtype='str'
)
print(f3)
0
pythonで文字列のdataframeであるf2にカラムをつけて文字列のdataframeのf3に
したいのですが、f3を出力したら全部nanになってしまいます。何故でしょうか?
f3=DataFrame(f2,columns=['data1','data2'],dtype='str'
)
print(f3)
疑問の解消にはならないですが…
f3 = pd.DataFrame(f2.values, columns=['data1','data2'],dtype='str')
でも所望の振る舞いをします。
f2にカラムを増やしただけで、内容を代入していないからでは?
それとも、nanではなく空文字になることを期待していたということでしょうか?
>>> import pandas as pd
>>> f2 = pd.DataFrame(['a', 'b'], columns=['data1'],dtype='str')
>>> f2
data1
0 a
1 b
>>> f3 = pd.DataFrame(f2, columns=['data1','data2'],dtype='str')
>>> f3
data1 data2
0 a nan
1 b nan
>>> f3['data2'] = ['c','d']
>>> f3
data1 data2
0 a c
1 b d
>>> f4 = pd.DataFrame([['a','b'],['c','d']],columns=['data1','data2'],dtype='str')
>>> f4
data1 data2
0 a b
1 c d
@amdc19
Questioner
f2.columns=['data1','data2']にしたらいけました…何故上の書き方では無理なんでしょうね…
)