タグ付けされた質問 「pandas」

Pandasは、データの操作と分析のためのPythonライブラリです。たとえば、データフレーム、多次元時系列、統計、実験科学の結果、計量経済学、金融などでよく見られる断面データセットです。Pandasは、Pythonの主要なデータサイエンスライブラリの1つです。

7
列のフォーマット文字列を使用してフロートのパンダデータフレームを表示する方法
とprint()IPython を使用して、特定の形式でパンダデータフレームを表示したいと思いますdisplay()。例えば: df = pd.DataFrame([123.4567, 234.5678, 345.6789, 456.7890], index=['foo','bar','baz','quux'], columns=['cost']) print df cost foo 123.4567 bar 234.5678 baz 345.6789 quux 456.7890 これをどうにかして印刷に強制したい cost foo $123.46 bar $234.57 baz $345.68 quux $456.79 データ自体を変更したり、コピーを作成したりすることなく、データの表示方法を変更するだけです。 これどうやってするの?

10
リストのパンダ列、各リスト要素の行を作成します
一部のセルに複数の値のリストが含まれているデータフレームがあります。セルに複数の値を格納するのではなく、データフレームを拡張して、リスト内の各項目が独自の行(他のすべての列に同じ値を持つ)を取得できるようにします。だから私が持っている場合: import pandas as pd import numpy as np df = pd.DataFrame( {'trial_num': [1, 2, 3, 1, 2, 3], 'subject': [1, 1, 1, 2, 2, 2], 'samples': [list(np.random.randn(3).round(2)) for i in range(6)] } ) df Out[10]: samples subject trial_num 0 [0.57, -0.83, 1.44] 1 1 1 [-0.01, 1.13, 0.36] 1 …
163 python  pandas  list 

13
2つのデータフレームを比較し、それらの違いを並べて出力する
2つのデータフレーム間で何が変わったかを正確に強調しようとしています。 2つのPython Pandasデータフレームがあるとします。 "StudentRoster Jan-1": id Name score isEnrolled Comment 111 Jack 2.17 True He was late to class 112 Nick 1.11 False Graduated 113 Zoe 4.12 True "StudentRoster Jan-2": id Name score isEnrolled Comment 111 Jack 2.17 True He was late to class 112 Nick 1.21 False Graduated 113 …
162 python  html  pandas  dataframe  panel 

5
Python Pandas集計結果からの科学的表記のフォーマット/非表示
非常に大きな数の科学的表記を生成するパンダのgroupby操作からの出力の形式をどのように変更できますか? 私はpythonで文字列フォーマットを行う方法を知っていますが、ここでそれを適用することになると途方に暮れます。 df1.groupby('dept')['data1'].sum() dept value1 1.192433e+08 value2 1.293066e+08 value3 1.077142e+08 これは、文字列に変換する場合、科学表記を抑制しますが、今は文字列形式にして小数を追加する方法を考えているだけです。 sum_sales_dept.astype(str)

3
パンダは各グループ内で上位n件のレコードを取得します
次のようなパンダDataFrameがあるとします。 >>> df = pd.DataFrame({'id':[1,1,1,2,2,2,2,3,4],'value':[1,2,3,1,2,3,4,1,1]}) >>> df id value 0 1 1 1 1 2 2 1 3 3 2 1 4 2 2 5 2 3 6 2 4 7 3 1 8 4 1 次のように、各IDの上位2レコードを含む新しいDataFrameを取得します。 id value 0 1 1 1 1 2 3 2 1 4 2 …

5
インデックスで2つのデータフレームをマージする
こんにちは私は次のデータフレームを持っています: > df1 id begin conditional confidence discoveryTechnique 0 278 56 false 0.0 1 1 421 18 false 0.0 1 > df2 concept 0 A 1 B どのようにしてインデックスをマージして取得しますか? id begin conditional confidence discoveryTechnique concept 0 278 56 false 0.0 1 A 1 421 18 false 0.0 1 B merge()つまりdf1.merge(df2)、マッチングを行うために列を使用することは私の理解です。実際、これを行うと次のようになります。 Traceback …

12
python pandas:列Aの重複を削除し、列Bの最大値を持つ行を維持します
列Aに繰り返し値があるデータフレームがあります。重複を削除して、列Bの値が最も高い行を維持します。 したがって、この: A B 1 10 1 20 2 30 2 40 3 10 これに変わるはずです: A B 1 20 2 40 3 10 Wesは、重複を削除するためのいくつかの優れた機能を追加しました:http : //wesmckinney.com/blog/?p=340。ただし、AFAICT、完全に重複するように設計されているため、保持する行を選択する基準についての言及はありません。 おそらくこれを行う簡単な方法があると思います-重複を削除する前にデータフレームをソートするのと同じくらい簡単かもしれません-しかし、それを理解するのに十分なgroupbyの内部ロジックを知りません。助言がありますか?

4
2012年にPandasがRのdata.tableマージよりもPythonでマージされたのはなぜですか?
私は最近、Python のパンダライブラリに出会いました。このベンチマークによると、非常に高速なメモリ内マージを実行します。R(分析用に選択した私の言語)のdata.tableパッケージよりもさらに高速です。 なぜpandasこれよりずっと速いのですdata.tableか?PythonがRより優れているという固有の速度の利点が原因ですか、それとも私が気付いていないトレードオフがありますか?andにdata.table頼らずに内部結合と外部結合を実行する方法はありますか?merge(X, Y, all=FALSE)merge(X, Y, all=TRUE) 以下は、さまざまなパッケージのベンチマークに使用されるRコードとPythonコードです。
160 python  r  join  data.table  pandas 

8
NumPyまたはPandas:NaN値を保持しながら配列型を整数として保持
内部に要素がリストされている間に、numpy配列のデータ型をint(またはint64その他の)として固定しておくための好ましい方法はありnumpy.NaNますか? 特に、社内のデータ構造をPandas DataFrameに変換しています。この構造では、整数型の列がまだNaNを持っています(ただし、列のdtypeはintです)。これをDataFrameにすると、すべてをフロートとして再キャストするように見えますが、本当にそうしたいintです。 考え? 試したこと: 私はfrom_records()pandas.DataFrameで関数を使用してみましたがcoerce_float=False、これは役に立ちませんでした。また、NumPyのマスクされた配列をNaN fill_valueで使用しようとしましたが、これも機能しませんでした。これらすべてが原因で、列のデータ型が浮動小数点になりました。

6
Pandasデータフレームでのランダムな行選択
パンダのデータフレームからランダムな行を選択する方法はありますか? Rでは、carパッケージを使用して、some(x, n)headと同様の便利な関数がありますが、この例では、xからランダムに10行を選択します。 私もスライスのドキュメントを見ましたが、同等のものは何もないようです。 更新 現在バージョン20を使用しています。サンプルメソッドがあります。 df.sample(n)
159 python  pandas 

9
パンダでtxtからデータをロードする
floatとstringのデータが混在するtxtファイルを読み込んでいます。各要素にアクセスできる配列にそれらを格納したいと思います。今私はただやっています import pandas as pd data = pd.read_csv('output_list.txt', header = None) print data これは入力ファイルの構造です:1 0 2000.0 70.2836942112 1347.28369421 /file_address.txt。 これで、データが一意の列としてインポートされました。どうやってそれを分割して、異なる要素を別々に格納することができますdata[i,j]か?そして、どうすればヘッダーを定義できますか?
159 python  io  pandas 

6
Python Pandasのすべての重複行を削除する
このpandas drop_duplicates関数は、データフレームを「一意化」するのに最適です。しかし、合格するキーワード引数の一つがあるtake_last=Trueかtake_last=False、私は列のサブセット間で重複しているすべての行をドロップしたいと思いながら、。これは可能ですか? A B C 0 foo 0 A 1 foo 1 A 2 foo 1 B 3 bar 1 A 一例として、私は、列に一致する行ドロップしたいAとC行0と1をドロップする必要があり、このように。

6
パンダの操作中の進行状況インジケーター
1,500万行を超えるデータフレームでパンダ操作を定期的に実行しており、特定の操作の進行状況インジケーターにアクセスしたいです。 パンダのsplit-apply-combine操作のテキストベースの進行状況インジケーターはありますか? たとえば、次のようなものです。 df_users.groupby(['userID', 'requestDate']).apply(feature_rollup) どこfeature_rollup多くのDF列を取るやや関与関数であり、様々な方法で新しいユーザー列を作成します。大きなデータフレームの場合、これらの操作にはしばらく時間がかかる可能性があるため、進行状況を更新するiPythonノートブックでテキストベースの出力が可能かどうかを知りたいです。 これまでのところ、Pythonの標準ループ進捗インジケーターを試しましたが、意味のある方法でパンダと相互作用しません。 私がパンダのライブラリ/ドキュメントで見落としてきた、split-apply-combineの進行状況を知ることができるものがあることを願っています。単純な実装では、apply関数が動作しているデータフレームサブセットの総数を調べて、それらのサブセットの完了した部分として進行状況を報告します。 これはおそらくライブラリに追加する必要があるものですか?
158 python  pandas  ipython 


9
パンダ列に特定の値が含まれているかどうかを確認する方法
Pandas列に特定の値を持つエントリがあるかどうかを確認しようとしています。私はでこれをやろうとしましたif x in df['id']。私はこれが機能していると思いましたが、列に含まれていないことがわかっている値を入力した場合は、43 in df['id']それでも返されTrueます。欠落しているID df[df['id'] == 43]に一致するエントリのみを含むデータフレームにサブセット化すると、明らかに、そこにエントリがありません。Pandasデータフレームの列に特定の値が含まれているかどうかを確認する方法と、現在のメソッドが機能しないのはなぜですか?(ちなみに、私が同じような質問に対するこの回答の実装を使用すると、同じ問題が発生します)。
156 python  pandas 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.