2017-05-04 17 views
12

私は大規模なデータフレームを持っている、と私はエラーを取得しています:pandas DataFrameの特定の行を印刷するには?

TypeError: ("Empty 'DataFrame': no numeric data to plot", 'occurred at index 159220')

私はそれがあることに失敗している理由について何らの推測を​​持っていないので、私はすでにヌルを滴下し、データフレームのためのdtypesをチェックしました行。

データフレームのその行(インデックス159220)だけを印刷するにはどうすればよいですか?

おかげ

+1

'プリント(df.iloc [[インデックス]])'私は3つの異なった答えを見てきました – lmiguelvargasf

答えて

10

使用ixオペレータ:あなたはdf.plot()を呼んでいるよう

print df.ix[159220] 
3

が鳴ります。そのエラーは、プロットに数値データがないフレームを試行していることを示しています。データタイプはあなたに影響しないはずですprint()

使用print(df.iloc[159220])

2

あなたはスカラー値でlocを呼び出すと、あなたはpd.Seriesを取得します。そのシリーズにはdtypeが1つあります。行をそのままデータフレームに表示したい場合は、インデクサーのような配列をlocに渡したいと思うでしょう。

角括弧

の追加のペアを使用してインデックス値をラップ
print(df.loc[[159220]]) 
+0

、(df.loc [[] ]、df.ix []、df.iloc [])には違いがありますか?または、他のものよりも1つの利点? – Acoustic77

+1

@ Acoustic77はい。 ixは廃止予定です。そして私はダブルブラケットの目的を説明します – piRSquared

+0

それを得て、ilocの上にlocの利点はありますか? – Acoustic77

関連する問題