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

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

3
パンダ:列のすべての値を変更する方法は?
呼び出された列を持つデータフレームがあり、"Date"この列のすべての値に同じ値を持たせたい(年のみ)。例: City Date Paris 01/04/2004 Lisbon 01/09/2004 Madrid 2004 Pekin 31/2004 私が欲しいのは: City Date Paris 2004 Lisbon 2004 Madrid 2004 Pekin 2004 これが私のコードです: fr61_70xls = pd.ExcelFile('AMADEUS FRANCE 1961-1970.xlsx') #Here we import the individual sheets and clean the sheets years=(['1961','1962','1963','1964','1965','1966','1967','1968','1969','1970']) fr={} header=(['City','Country','NACE','Cons','Last_year','Op_Rev_EUR_Last_avail_yr','BvD_Indep_Indic','GUO_Name','Legal_status','Date_of_incorporation','Legal_status_date']) for year in years: # save every sheet in …

5
DjangoQuerySetをパンダDataFrameに変換する
DataFrame次のように、DjangoQuerySetをパンダに変換します。 qs = SomeModel.objects.select_related().filter(date__year=2012) q = qs.values('date', 'OtherField') df = pd.DataFrame.from_records(q) それは機能しますが、より効率的な方法はありますか?
90 python  django  pandas 

10
メタ情報/メタデータをパンダDataFrameに追加する
いくつかのメタ情報/メタデータをパンダのDataFrameに追加することは可能ですか? たとえば、データの測定に使用される機器の名前、責任のある機器など。 回避策の1つは、その情報を使用して列を作成することですが、すべての行に1つの情報を格納するのは無駄に思えます。
90 python  pandas 

5
ネストされた辞書のアイテムからパンダDataFrameを構築します
構造を持つネストされた辞書 'user_dict'があるとします。 レベル1: UserId(長整数) レベル2:カテゴリ(文字列) レベル3:さまざまな属性(float、intなど) たとえば、この辞書のエントリは次のようになります。 user_dict[12] = { "Category 1": {"att_1": 1, "att_2": "whatever"}, "Category 2": {"att_1": 23, "att_2": "another"}} の各アイテムuser_dictは同じ構造でありuser_dict、パンダのDataFrameにフィードするアイテムが多数含まれており、属性からシリーズを構築します。この場合、階層インデックスがこの目的に役立ちます。 具体的には、私の質問は、シリーズが辞書の「レベル3」の値から構築されるべきであることをDataFrameコンストラクターが理解するのを助ける方法があるかどうかです。 私が次のようなことを試みた場合: df = pandas.DataFrame(users_summary) 「レベル1」(ユーザーID)の項目は列として取得されます。これは、私が達成したいものとは逆です(ユーザーIDをインデックスとして使用します)。 辞書のエントリを繰り返し処理した後でシリーズを作成できることはわかっていますが、もっと直接的な方法があれば、これは非常に便利です。同様の質問は、ファイルにリストされているjsonオブジェクトからパンダDataFrameを構築できるかどうかを尋ねることです。

3
DataFrameのリストをマルチシートExcelスプレッドシートに保存します
DataFrameのリストを1つのExcelスプレッドシートにエクスポートするにはどうすればよいですか?状態 のドキュメントto_excel: 注 既存のExcelWriterオブジェクトを渡すと、シートが既存のブックに追加されます。これを使用して、さまざまなデータフレームを1つのブックに保存できます writer = ExcelWriter('output.xlsx') df1.to_excel(writer, 'sheet1') df2.to_excel(writer, 'sheet2') writer.save() これに続いて、次のようにDataFrameのリストを1つのスプレッドシートに保存する関数を作成できると思いました。 from openpyxl.writer.excel import ExcelWriter def save_xls(list_dfs, xls_path): writer = ExcelWriter(xls_path) for n, df in enumerate(list_dfs): df.to_excel(writer,'sheet%s' % n) writer.save() ただし(それぞれがto_excel個別に保存できる2つの小さなDataFrameのリストを使用)、例外が発生します(編集:トレースバックが削除されました): AttributeError: 'str' object has no attribute 'worksheets' おそらく私はExcelWriter正しく電話をかけていませんが、これを行うにはどうすればよいですか?

4
パンダでゼロのみを含む列を削除するにはどうすればよいですか?
現在、値が1と0の列で構成されるデータフレームがあります。列を反復処理して、0のみで構成される列を削除したいと思います。これが私がこれまでに試したことです: ones = [] zeros = [] for year in years: for i in range(0,599): if year[str(i)].values.any() == 1: ones.append(i) if year[str(i)].values.all() == 0: zeros.append(i) for j in ones: if j in zeros: zeros.remove(j) for q in zeros: del year[str(q)] 分析しているさまざまな年のデータフレームのリストは年であり、1は1を含む列で構成され、ゼロはすべてゼロを含む列のリストです。条件に基づいて列を削除するより良い方法はありますか?何らかの理由で、1の列がゼロのリストにも含まれているかどうかを確認し、それらをゼロのリストから削除して、すべてのゼロの列のリストを取得する必要があります。
90 python  pandas 

5
パンダデータフレームの列を1つ上にシフトしますか?
パンダのデータフレームがあります。列の1つを「遅らせ」たい。つまり、たとえば、列全体 'gdp'を1つ上にシフトし、残りの行の下部にある余分なデータをすべて削除して、すべての列が再び同じ長さになるようにします。 df = y gdp cap 0 1 2 5 1 2 3 9 2 8 7 2 3 3 4 7 4 6 7 7 df_lag = y gdp cap 0 1 3 5 1 2 7 9 2 8 4 2 3 3 7 7 とにかくこれを行うには?

9
パンダを使用して、既存のExcelファイルに新しいシートを保存するにはどうすればよいですか?
Excelファイルを使用してPythonで作成されたデータを保存したいと思います。私の問題は、既存のExcelファイルにシートを追加できないことです。ここでは、この問題に到達するために使用するサンプルコードを提案します import pandas as pd import numpy as np path = r"C:\Users\fedel\Desktop\excelData\PhD_data.xlsx" x1 = np.random.randn(100, 2) df1 = pd.DataFrame(x1) x2 = np.random.randn(100, 2) df2 = pd.DataFrame(x2) writer = pd.ExcelWriter(path, engine = 'xlsxwriter') df1.to_excel(writer, sheet_name = 'x1') df2.to_excel(writer, sheet_name = 'x2') writer.save() writer.close() このコードは、2つのDataFrameをそれぞれ「x1」と「x2」という名前の2つのシートに保存します。2つの新しいDataFrameを作成し、同じコードを使用して2つの新しいシート「x3」と「x4」を追加しようとすると、元のデータが失われます。 import pandas as pd import numpy as …

1
グループ化されたパンダのDataFrameに効率的に関数を効率的に適用する
DataFrame(混合データ型の)非常に大きなグループに関数を適用する必要があることが多く、複数のコアを利用したいと考えています。 グループからイテレータを作成してマルチプロセッシングモジュールを使用できますが、すべてのグループと関数の結果をプロセス間のメッセージングのためにピクルする必要があるため、効率的ではありません。 酸洗いを回避する方法、またはDataFrame完全なコピーを回避する方法はありますか?マルチプロセッシングモジュールの共有メモリ機能はnumpy配列に限定されているようです。他のオプションはありますか?

2
Python Pandas:group by group by and average?
私はこのようなデータフレームを持っています: cluster org time 1 a 8 1 a 6 2 h 34 1 c 23 2 d 74 3 w 6 クラスタごと、組織ごとの平均時間を計算したいと思います。 期待される結果: cluster mean(time) 1 15 ((8+6)/2+23)/2 2 54 (74+34)/2 3 6 パンダでそれを行う方法がわかりません、誰か助けてくれますか?
89 python  pandas  group-by  mean 

8
Pandas / Pyplotの散布図:カテゴリ別にプロットする方法
Pandas DataFrameオブジェクトを使用してpyplotで単純な散布図を作成しようとしていますが、2つの変数をプロットする効率的な方法が必要ですが、シンボルは3番目の列(キー)で指定されています。df.groupbyを使用してさまざまな方法を試しましたが、うまくいきませんでした。サンプルのdfスクリプトを以下に示します。これは「key1」に従ってマーカーに色を付けますが、「key1」カテゴリの凡例を見たいと思います。私は近いですか?ありがとう。 import numpy as np import pandas as pd import matplotlib.pyplot as plt df = pd.DataFrame(np.random.normal(10,1,30).reshape(10,3), index = pd.date_range('2010-01-01', freq = 'M', periods = 10), columns = ('one', 'two', 'three')) df['key1'] = (4,4,4,6,6,6,8,8,8,8) fig1 = plt.figure(1) ax1 = fig1.add_subplot(111) ax1.scatter(df['one'], df['two'], marker = 'o', c = df['key1'], alpha = …

13
2つのデータフレームを比較し、違いを取得する
2つのデータフレームがあります。例: df1: Date Fruit Num Color 2013-11-24 Banana 22.1 Yellow 2013-11-24 Orange 8.6 Orange 2013-11-24 Apple 7.6 Green 2013-11-24 Celery 10.2 Green df2: Date Fruit Num Color 2013-11-24 Banana 22.1 Yellow 2013-11-24 Orange 8.6 Orange 2013-11-24 Apple 7.6 Green 2013-11-24 Celery 10.2 Green 2013-11-25 Apple 22.1 Red 2013-11-25 Orange 8.6 …

7
パンダのmerge()とconcat()の違い
間に本質的な違い(S)何pd.DataFrame.merge()とはpd.concat()? これまでのところ、これは私が見つけたものです。私の理解がどれほど完全で正確であるかについてコメントしてください。 .merge()列(および行インデックス)のみを使用でき、データベーススタイルの操作に意味的に適しています。.concat()インデックスのみを使用して、どちらの軸でも使用でき、階層インデックスを追加するためのオプションを提供します。 ちなみに、これにより次の冗長性が可能になります。どちらも行インデックスを使用して2つのデータフレームを組み合わせることができます。 pd.DataFrame.join() のユースケースのサブセットの省略形を提供するだけです .merge() (Pandasは、データ分析の非常に幅広いユースケースに対応するのに優れています。ドキュメントを調べて、特定のタスクを実行するための最良の方法を見つけるのは少し難しいかもしれません。)
89 python  pandas  join  merge  concat 

3
パンダはグループごとに合計されますが、特定の列は除外されます
Pandasデータフレームでgroupbyを実行し、そのgroupbyから一部の列を除外する最良の方法は何ですか?たとえば、次のデータフレームがあります。 Code Country Item_Code Item Ele_Code Unit Y1961 Y1962 Y1963 2 Afghanistan 15 Wheat 5312 Ha 10 20 30 2 Afghanistan 25 Maize 5312 Ha 10 20 30 4 Angola 15 Wheat 7312 Ha 30 40 50 4 Angola 25 Maize 7312 Ha 30 40 50 国とItem_Codeの列でグループ化し、Y1961、Y1962、Y1963の列に該当する行の合計のみを計算したいと思います。結果のデータフレームは次のようになります。 Code Country Item_Code …

1
パンダでの多重指数ソート
pandas dfにマルチインデックス列を持つデータセットがあり、特定の列の値で並べ替えたいと思います。sortindexとsortlevelを使用しようとしましたが、探している結果を得ることができませんでした。私のデータセットは次のようになります: Group1 Group2 A B C A B C 1 1 0 3 2 5 7 2 5 6 9 1 0 0 3 7 0 2 0 3 5 グループ1の列Cですべてのデータとインデックスを降順で並べ替えて、結果が次のようになるようにします。 Group1 Group2 A B C A B C 2 5 6 9 1 0 0 1 1 0 …

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