1. ホーム
  2. python

[解決済み] pandasでデータフレームの全列からデータを出力する [重複].

2022-07-31 19:49:35

質問

という名前のcsvファイルを持っています。 params.csv . 私は ipython qtconsole を作成し、パンダの dataframe を使っています。

import pandas
paramdata = pandas.read_csv('params.csv', names=paramnames)

ここで paramnames は文字列オブジェクトのpythonリストです。例として paramnames (の例です(実際のリストの長さは22です)。

paramnames = ["id",
"fc",
"mc",
"markup",
"asplevel",
"aspreview",
"reviewpd"]

ipythonのプロンプトで、次のように入力すると paramdata と入力してEnterキーを押しても、以下の例に示すような列と値を持つデータフレームは得られません。 Pandasのウェブサイト . 代わりに、私はデータフレームに関する情報を取得します。私は取得します。

In[35]: paramdata
Out[35]: 
<class 'pandas.core.frame.DataFrame'>
Int64Index: 59 entries, 0 to 58
Data columns:
id                    59  non-null values
fc                    59  non-null values
mc                    59  non-null values
markup                59  non-null values
asplevel              59  non-null values
aspreview             59  non-null values
reviewpd              59  non-null values

もし私が paramdata['mc'] と入力すると、期待通りの値が mc カラムに期待通りの値が得られます。私は2つの質問があります。

(1) pandasのウェブサイトの例では(たとえば df をここに示します。 http://pandas.sourceforge.net/indexing.html#additional-column-access のように、データフレームの名前を入力すると、実際のデータが表示されます。なぜ、実際のデータではなく、上記のようなデータフレームに関する情報が表示されるのでしょうか?どこかで出力オプションを設定する必要があるのでしょうか?

(2) データフレーム内のすべての列の名前を入力せずに、画面に出力するにはどうしたらよいでしょうか。 paramdata[['id','fc','mc']] .

pandasのバージョン0.8を使用しています。

ありがとうございます。

どのように解決するのですか?

画面に表示するデータが多すぎるため、代わりにサマリーを表示しています。

とにかくデータを出力したい場合(おそらく画面に収まらず、見た目もあまりよくありません)。

print paramdata.values

は、データフレームをnumpy-arrayの行列表現に変換します。

paramdata.columns

はそれぞれのカラム名を格納し

paramdata.index

はそれぞれのインデックス(行名)を格納します。