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

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

11
pandas DataFrameから部分文字列で選択
私にはDataFrame4つの列があり、そのうち2つには文字列値が含まれています。特定の列に対する部分的な文字列の一致に基づいて行を選択する方法があるかどうか疑問に思いましたか? 言い換えると、次のような関数またはラムダ関数 re.search(pattern, cell_in_question) ブール値を返します。私はの構文に精通していますがdf[df['A'] == "hello world"]、部分的な文字列一致sayで同じことを行う方法を見つけることができないようです'hello'。 誰かが私を正しい方向に向けることができるでしょうか?

7
パンダGroupByを使用して各グループ(カウント、平均など)の統計を取得しますか?
データフレームがdfあり、そこからいくつかの列を使用してgroupby: df['col1','col2','col3','col4'].groupby(['col1','col2']).mean() 上記の方法で、必要なテーブル(データフレーム)をほぼ取得します。欠けているのは、各グループの行数を含む追加の列です。言い換えれば、私には意地悪がありますが、これらの手段を得るために使用された数の数も知りたいのです。たとえば、最初のグループには8つの値があり、2番目のグループには10というように続きます。 つまり、データフレームのグループごとの統計情報を取得するにはどうすればよいですか?

9
DataFrame行をシャッフルする
次のDataFrameがあります。 Col1 Col2 Col3 Type 0 1 2 3 1 1 4 5 6 1 ... 20 7 8 9 2 21 10 11 12 2 ... 45 13 14 15 3 46 16 17 18 3 ... DataFrameはcsvファイルから読み取られます。Type1を含むすべての行が一番上にあり、Type2 の行が続き、Type3 の行が続きます。 すべてTypeのが混在するように、DataFrameの行の順序を入れ替えたいのですが。考えられる結果は次のとおりです。 Col1 Col2 Col3 Type 0 7 8 9 …

7
SQLのように「in」と「not in」を使用してPandasデータフレームをフィルタリングする方法
SQL INと同等のものをどのようにして実現できますNOT INか? 必要な値のリストがあります。ここにシナリオがあります: df = pd.DataFrame({'countries':['US','UK','Germany','China']}) countries = ['UK','China'] # pseudo-code: df[df['countries'] not in countries] これを行う私の現在の方法は次のとおりです。 df = pd.DataFrame({'countries':['US','UK','Germany','China']}) countries = pd.DataFrame({'countries':['UK','China'], 'matched':True}) # IN df.merge(countries,how='inner',on='countries') # NOT IN not_in = df.merge(countries,how='left',on='countries') not_in = not_in[pd.isnull(not_in['matched'])] しかし、これは恐ろしいクラッジのようです。誰かがそれを改善できますか?

18
Pythonを使用してパンダでCSVファイルを読み取るときのUnicodeDecodeError
30,000の同様のファイルを処理するプログラムを実行しています。それらのランダムな数が停止し、このエラーが発生しています... File "C:\Importer\src\dfman\importer.py", line 26, in import_chr data = pd.read_csv(filepath, names=fields) File "C:\Python33\lib\site-packages\pandas\io\parsers.py", line 400, in parser_f return _read(filepath_or_buffer, kwds) File "C:\Python33\lib\site-packages\pandas\io\parsers.py", line 205, in _read return parser.read() File "C:\Python33\lib\site-packages\pandas\io\parsers.py", line 608, in read ret = self._engine.read(nrows) File "C:\Python33\lib\site-packages\pandas\io\parsers.py", line 1028, in read data = self._reader.read(nrows) File "parser.pyx", line 706, …

6
保存されたcsvにPython / Pandasがインデックスを作成しないようにするにはどうすればよいですか?
ファイルを編集した後、csvをフォルダーに保存しようとしています。 pd.to_csv('C:/Path of file.csv')csvファイルを使用するたびに、インデックスの個別の列があります。インデックスをcsvに出力しないようにしたい。 私は試した: pd.read_csv('C:/Path to file to edit.csv', index_col = False) そしてファイルを保存するには... pd.to_csv('C:/Path to save edited file.csv', index_col = False) しかし、私はまだ不要なインデックス列を取得しました。ファイルを保存するときにこれを回避するにはどうすればよいですか?
407 python  csv  indexing  pandas 

15
複数のcsvファイルをパンダにインポートし、1つのDataFrameに連結する
ディレクトリからパンダにいくつかのcsvファイルを読み取り、それらを1つの大きなDataFrameに連結したいと思います。私はそれを理解することができませんでした。ここに私がこれまでに持っているものがあります: import glob import pandas as pd # get data file names path =r'C:\DRO\DCL_rawdata_files' filenames = glob.glob(path + "/*.csv") dfs = [] for filename in filenames: dfs.append(pd.read_csv(filename)) # Concatenate all data into one DataFrame big_frame = pd.concat(dfs, ignore_index=True) forループ内で助けが必要だと思いますか???

6
整数インデックスによるパンダシリーズ/データフレームの行の選択
なぜか知りたい df[2]、しばらくはサポートされていないdf.ix[2]とdf[2:3]仕事の両方を。 In [26]: df.ix[2] Out[26]: A 1.027680 B 1.514210 C -1.466963 D -0.162339 Name: 2000-01-03 00:00:00 In [27]: df[2:3] Out[27]: A B C D 2000-01-03 1.02768 1.51421 -1.466963 -0.162339 私はdf[2]同じように働くと期待しますdf[2:3]、Pythonのインデックス付け規則に準拠するのとています。単一の整数による行のインデックス付けをサポートしない設計上の理由はありますか?

15
変数の値からpandas DataFrameを作成すると、「ValueError:すべてのスカラー値を使用する場合は、インデックスを渡す必要があります」
これは簡単な質問かもしれませんが、これを行う方法がわかりません。次のように2つの変数があるとしましょう。 a = 2 b = 3 これからDataFrameを構築したい: df2 = pd.DataFrame({'A':a,'B':b}) これはエラーを生成します: ValueError:すべてのスカラー値を使用する場合は、インデックスを渡す必要があります 私もこれを試しました: df2 = (pd.DataFrame({'a':a,'b':b})).reset_index() これにより、同じエラーメッセージが表示されます。

6
シリーズの真理値があいまいです。a.empty、a.bool()、a.item()、a.any()またはa.all()を使用します
or条件付きの結果データフレームのフィルタリングに問題があります。私の結果は、0.25を超え、-0.25未満のdfすべての列のvar値を抽出する必要があります。 以下のこのロジックは、あいまいな真理値を与えますが、このフィルタリングを2つの個別の操作に分割すると機能します。ここで何が起きてるの?提案された使用する場所がわからないa.empty(), a.bool(), a.item(),a.any() or a.all()。 result = result[(result['var']>0.25) or (result['var']<-0.25)]

12
Pandasデータフレームの2つの列に関数を適用する方法
のdf列を持つがあるとします'ID', 'col_1', 'col_2'。そして私は関数を定義します: f = lambda x, y : my_function_expression。 次に、の2つの列を要素ごとに適用しfて、新しい列を計算します。df'col_1', 'col_2''col_3' df['col_3'] = df[['col_1','col_2']].apply(f) # Pandas gives : TypeError: ('<lambda>() takes exactly 2 arguments (1 given)' 実行する方法 ? ** 以下のように詳細サンプルを追加します *** import pandas as pd df = pd.DataFrame({'ID':['1','2','3'], 'col_1': [0,2,3], 'col_2':[1,4,5]}) mylist = ['a','b','c','d','e','f'] def get_sublist(sta,end): return mylist[sta:end+1] #df['col_3'] …
368 python  pandas  dataframe 

2
パンダのマージ101
パンダと(LEFT| RIGHT| FULL)(INNER| OUTER)結合を実行する方法? マージ後に不足している行にNaNを追加するにはどうすればよいですか? マージ後にNaNを取り除くにはどうすればよいですか? インデックスでマージできますか? パンダと一緒に参加しますか? 複数のデータフレームをマージするにはどうすればよいですか? merge?join?concat?update?WHO?何?なぜ?! ... もっと。私はパンダのマージ機能のさまざまな側面について尋ねるこれらの繰り返しの質問を見てきました。今日のマージとそのさまざまな使用例に関するほとんどの情報は、不適切な言葉で検索できない数十の投稿に断片化されています。ここでの目的は、後世のためのいくつかのより重要なポイントを照合することです。 このQnAは、一般的なパンダのイディオムに関する一連の役立つユーザーガイドの次の記事になることを意図しています(ピボットに関するこの投稿と、後で説明する連結に関するこの投稿を参照してください)。 この投稿はドキュメントの代わりとなるものではないので注意してください。いくつかの例はそこから取られています。
365 python  pandas  join  merge 

2
データフレームをピボットする方法
ピボットとは何ですか? ピボットするにはどうすればよいですか? これはピボットですか? ロングフォーマットからワイドフォーマット? ピボットテーブルについての質問をたくさん見てきました。ピボットテーブルについて質問していることを知らなくても、通常はそうです。ピボットのすべての側面を網羅する標準的な質問と回答を書くことは事実上不可能です... ...しかし、私はそれを試してみるつもりです。 既存の質疑応答の問題は、多くの既存の適切な解答を使用するために、OPが一般化するのが難しいニュアンスに質問が集中していることが多いことです。ただし、すべての回答が包括的な説明を試みることはありません(これは困難な作業であるため) 私のグーグル検索からいくつかの例を見てください パンダでデータフレームをピボットする方法は? 良い質問と答え。しかし、答えはほとんど説明せずに特定の質問に答えるだけです。 パンダのピボットテーブルからデータフレームへ この質問では、OPはピボットの出力に関係しています。つまり、列の外観。OPはRのように見せたかったのですが、これはパンダのユーザーにとってはあまり役に立ちません。 データフレームをピボットするパンダ、重複する行 別のまともな質問ですが、答えは1つの方法、すなわち pd.DataFrame.pivot したがって、誰かが検索を行うpivotと、散発的な結果が得られますが、特定の質問には答えられない可能性があります。 セットアップ 列と関連する列の値に目立つように名前を付けて、以下の回答でどのようにピボットを行うかに対応していることに気付くでしょう。 import numpy as np import pandas as pd from numpy.core.defchararray import add np.random.seed([3,1415]) n = 20 cols = np.array(['key', 'row', 'item', 'col']) arr1 = (np.random.randint(5, size=(n, 4)) // [2, 1, 2, 1]).astype(str) …

11
データフレームのセルから値を取得するにはどうすればよいですか?
データフレームから1行だけを抽出する条件を作成しました。 d2 = df[(df['l_ext']==l_ext) & (df['item']==item) & (df['wn']==wn) & (df['wd']==1)] ここで、特定の列から値を取得したいと思います。 val = d2['col_name'] しかし、結果として、1つの行と1つの列(つまり 1つのセル)を含むデータフレームが得られます。それは私が必要とするものではありません。1つの値(1つの浮動小数点数)が必要です。パンダでどうすればいいですか?
344 python  pandas  dataframe 

30
Python Pandas Errorデータのトークン化
パンダを使用して.csvファイルを操作しようとしていますが、次のエラーが発生します。 pandas.parser.CParserError:データのトークン化エラー。Cエラー:3行目に2つのフィールドが必要ですが、12を見ました パンダのドキュメントを読み込もうとしましたが、何も見つかりませんでした。 私のコードは単純です: path = 'GOOG Key Ratios.csv' #print(open(path).read()) data = pd.read_csv(path) どうすればこれを解決できますか?csvモジュールまたは別の言語を使用する必要がありますか? ファイルはMorningstarからのものです
341 python  csv  pandas 

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