この翻訳はから:PANDASデータフレームからのGetリストの列ヘッダー
私はのリストを取得したいパンダから列ヘッダーをデータフレーム。 私はパンダのデータフレームから列見出しのリストを取得したいです。 私はされることではないが意志することで、列を知ってどのようにすることによりデータフレームは、INPUT SO MANYでユーザーから来るのでしょうかによって呼び出さ彼らはどうなるか。 データフレームの入力をユーザから、私は彼らが呼ばれる何列かのか分からないようにします。
例えば、私は与えられていた場合 、このようなデータフレームを: たとえば、あなたが私にこのデータフレームを与える場合:
>>> my_dataframe
y gdp cap
0 1 2 5
1 2 3 9
2 8 7 2
3 3 4 7
4 6 7 7
5 4 8 3
6 8 2 8
7 9 9 10
8 6 6 4
9 10 10 7
私のようなリストを取得するとよいでしょう 。これを 私はこのようなリストが欲しいです:
>>> header_list
['y', 'gdp', 'cap']
#1階
参考:https://stackoom.com/question/1JkPS/ GETから列ヘッダーのリストパンダ、データフレーム
ハウス#2
ことでmy_dataframe.columns
。
ハウス#3
あなたは、リストなどの値を取得することができます実行して: あなたはリスト形式で値を取得するには、次の操作を行うことができます。
list(my_dataframe.columns.values)
単にあなたはまた、CANを使用します(に示すように、エド・チャムの答え): あなたは、単に使用することができます:(としてエド・チャムが示さ答え):
list(my_dataframe)
#4階
n = []
for i in my_dataframe.columns:
n.append(i)
print n
ハウス#5
ある方法で構築があります :最もパフォーマンス 組み込みの方法が最も効果的であるが。
my_dataframe.columns.values.tolist()
.columns
AN指数は、Aを返す.columns.values
A ANアレイAヘルパーがこの機能を持っていると返す.tolist
Aリストを返すように。 .columns
、インデックスを返す.columns.values
配列を返し、それはヘルプ機能を持つ.tolist
リストを返すように。
あなたは、するかの重要ASパフォーマンスではありませんIndex
DEFINE Aオブジェクトの.tolist()
メソッドを使用すると、直接呼び出すことができ、: パフォーマンスはあなたにとって非常に重要でない場合は、Index
オブジェクトを定義することである.tolist()
方法を、あなたは、このメソッドを直接呼び出すことができます。
my_dataframe.columns.tolist()
パフォーマンスの違いは明白です: パフォーマンスの違いは明らかです。
%timeit df.columns.tolist()
16.7 µs ± 317 ns per loop (mean ± std. dev. of 7 runs, 100000 loops each)
%timeit df.columns.values.tolist()
1.24 µs ± 12.3 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
用を憎む者、あなただけ呼び出すことができ、これらのタイピングlist
ONはdf
:、SO AS タイピングを憎む人のために、あなたができるdf
の呼び出しでlist
次のように:
list(df)
ハウス#6
A データフレームが従うオーバーなどの「キー」の大会を反復処理するためのdictは。対象 DATAFRAMEオブジェクトを反復処理することを同様の大会辞書に従う「キー。」
my_dataframe.keys()
メソッドオブジェクト-作成キー/列のAリストto_list()
とPython的な方法 オブジェクトのメソッド-リスト作成キー/列to_list()
およびto_list()
方法
my_dataframe.keys().to_list()
list(my_dataframe.keys())
イテレーション基本 ON Aデータフレームは、列ラベルを返す のDATAFRAME 基本的な反復リターン列ラベル
[column for column in my_dataframe]
リストにデータフレームを変換しないでくださいだけで列ラベルを取得するには、。 ちょうどリストに列ラベル意志データフレームを取得しないでください。 便利な探しながら思考を停止しないでくださいコードのサンプル。 便利なサンプルコードを探している場合は、停止しない思考を行ってください。
xlarge = pd.DataFrame(np.arange(100000000).reshape(10000,10000))
list(xlarge) #compute time and memory consumption depend on dataframe size - O(N)
list(xlarge.keys()) #constant time operation - O(1)