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

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

5
欠落している日付をパンダデータフレームに追加する
私のデータには、特定の日付に複数のイベントがあるか、日付にイベントがありません。私はこれらのイベントを受け取り、日付ごとにカウントを取得してプロットします。しかし、それらをプロットすると、2つのシリーズが常に一致するとは限りません。 idx = pd.date_range(df['simpleDate'].min(), df['simpleDate'].max()) s = df.groupby(['simpleDate']).size() 上記のコードでは、idxはたとえば30日付の範囲になります。2013 年9月1日から2013 年9月30日までただし、特定の日付にイベントが発生しなかったため、Sは25日または26日しかありません。次に、プロットしようとするとサイズが一致しないため、AssertionErrorが発生します。 fig, ax = plt.subplots() ax.bar(idx.to_pydatetime(), s, color='green') これに取り組む適切な方法は何ですか?IDXから値のない日付を削除しますか、それとも(そうしたいのですが)、0のカウントで欠落している日付をシリーズに追加しますか?値が0の30日間の完全なグラフが必要です。このアプローチが正しい場合、開始方法に関する提案はありますか?何らかの動的reindex機能が必要ですか? これがS(df.groupby(['simpleDate']).size() )のスニペットです。04と05のエントリがないことに注意してください。 09-02-2013 2 09-03-2013 10 09-06-2013 5 09-07-2013 1
126 python  date  plot  pandas  dataframe 

6
パンダのマージを使用するときにインデックスを保持する方法
2つをマージDataFramesし、最初のフレームのインデックスを、マージされたデータセットのインデックスとして保持します。ただし、マージを実行すると、結果のDataFrameに整数インデックスが含まれます。左のデータフレームのインデックスを保持するように指定するにはどうすればよいですか? In [4]: a = pd.DataFrame({'col1': {'a': 1, 'b': 2, 'c': 3}, 'to_merge_on': {'a': 1, 'b': 3, 'c': 4}}) In [5]: b = pd.DataFrame({'col2': {0: 1, 1: 2, 2: 3}, 'to_merge_on': {0: 1, 1: 3, 2: 5}}) In [6]: a Out[6]: col1 to_merge_on a 1 1 b 2 3 c …
126 python  pandas 

8
.corrを使用して2つの列間の相関を取得する
私は次のパンダのデータフレームを持っていますTop15: 1人あたりの引用可能なドキュメントの数を推定する列を作成します。 Top15['PopEst'] = Top15['Energy Supply'] / Top15['Energy Supply per Capita'] Top15['Citable docs per Capita'] = Top15['Citable documents'] / Top15['PopEst'] 一人当たりの被引用文献数と一人当たりのエネルギー供給量の相関関係を知りたい。だから私は.corr()メソッド(ピアソンの相関)を使います: data = Top15[['Citable docs per Capita','Energy Supply per Capita']] correlation = data.corr(method='pearson') 単一の数値を返したいのですが、結果は次のとおりです。

4
パンダのdatetime dtypes read_csv
複数の日時列を含むcsvファイルを読み込んでいます。ファイルを読み込むときにデータ型を設定する必要がありますが、日時に問題があるようです。例えば: headers = ['col1', 'col2', 'col3', 'col4'] dtypes = ['datetime', 'datetime', 'str', 'float'] pd.read_csv(file, sep='\t', header=None, names=headers, dtype=dtypes) 実行時にエラーが発生した場合: TypeError:データ型 "datetime"が理解できません 実際にpandas.to_datetime()を使用して列を変換することはオプションではありません。どの列がdatetimeオブジェクトになるかわかりません。その情報は変更される可能性があり、私のdtypesリストを知らせるものからのものです。 または、numpy.genfromtxtを使用してcsvファイルをロードし、その関数にdtypesを設定してから、pandas.dataframeに変換しようとしましたが、データが文字化けしました。どんな助けでも大歓迎です!

9
Pythonパンダは重複した列を削除します
データフレームから重複する列を削除する最も簡単な方法は何ですか? 私は重複した列を持つテキストファイルを読んでいます: import pandas as pd df=pd.read_table(fname) 列名は次のとおりです。 Time, Time Relative, N2, Time, Time Relative, H2, etc... すべての時間および時間相対列には同じデータが含まれています。が欲しいです: Time, Time Relative, N2, H2 ドロップ、削除などのすべての私の試み: df=df.T.drop_duplicates().T 一意に評価されるインデックスエラーが発生します。 Reindexing only valid with uniquely valued index objects パンダの初心者であってごめんなさい。任意の提案をいただければ幸いです。 さらなる詳細 Pandasバージョン:0.9.0 Pythonバージョン:2.7.3 Windows 7 (Pythonxy 2.7.3.0経由でインストール) データファイル(注:実際のファイルでは、列はタブで区切られています。ここでは4つのスペースで区切られています): Time Time Relative [s] N2[%] Time Time …
126 python  pandas 

10
Pythonでパンダを使用してすべての重複アイテムのリストを取得するにはどうすればよいですか?
輸出に問題があると思われるアイテムのリストがあります。重複するアイテムのリストを取得して、手動で比較できるようにしたいと思います。私がパンダの複製されたメソッドを使用しようとすると、最初の複製のみが返されます。最初のものだけでなく、すべての複製を取得する方法はありますか? 私のデータセットの小さなサブセクションは次のようになります: ID,ENROLLMENT_DATE,TRAINER_MANAGING,TRAINER_OPERATOR,FIRST_VISIT_DATE 1536D,12-Feb-12,"06DA1B3-Lebanon NH",,15-Feb-12 F15D,18-May-12,"06405B2-Lebanon NH",,25-Jul-12 8096,8-Aug-12,"0643D38-Hanover NH","0643D38-Hanover NH",25-Jun-12 A036,1-Apr-12,"06CB8CF-Hanover NH","06CB8CF-Hanover NH",9-Aug-12 8944,19-Feb-12,"06D26AD-Hanover NH",,4-Feb-12 1004E,8-Jun-12,"06388B2-Lebanon NH",,24-Dec-11 11795,3-Jul-12,"0649597-White River VT","0649597-White River VT",30-Mar-12 30D7,11-Nov-12,"06D95A3-Hanover NH","06D95A3-Hanover NH",30-Nov-11 3AE2,21-Feb-12,"06405B2-Lebanon NH",,26-Oct-12 B0FE,17-Feb-12,"06D1B9D-Hartland VT",,16-Feb-12 127A1,11-Dec-11,"064456E-Hanover NH","064456E-Hanover NH",11-Nov-12 161FF,20-Feb-12,"0643D38-Hanover NH","0643D38-Hanover NH",3-Jul-12 A036,30-Nov-11,"063B208-Randolph VT","063B208-Randolph VT", 475B,25-Sep-12,"06D26AD-Hanover NH",,5-Nov-12 151A3,7-Mar-12,"06388B2-Lebanon NH",,16-Nov-12 CA62,3-Jan-12,,, D31B,18-Dec-11,"06405B2-Lebanon NH",,9-Jan-12 20F5,8-Jul-12,"0669C50-Randolph VT",,3-Feb-12 8096,19-Dec-11,"0649597-White River VT","0649597-White …

4
パンダで2列からタプル列を形成する方法
Pandas DataFrameがあり、「lat」列と「long」列を組み合わせてタプルを形成したいと思います。 <class 'pandas.core.frame.DataFrame'> Int64Index: 205482 entries, 0 to 209018 Data columns: Month 205482 non-null values Reported by 205482 non-null values Falls within 205482 non-null values Easting 205482 non-null values Northing 205482 non-null values Location 205482 non-null values Crime type 205482 non-null values long 205482 non-null values lat 205482 non-null …


2
パンダでランダムな整数のデータフレームを作成するにはどうすればよいですか?
私が使用する場合randn、 import pandas as pd import numpy as np df = pd.DataFrame(np.random.randn(100, 4), columns=list('ABCD')) 私が探しているものを私に与えますが、正規分布の要素があります。しかし、ランダムな整数が必要な場合はどうなりますか? randint範囲を提供することで機能しますが、配列のような配列ではrandn機能しません。それで、ある範囲の間のランダムな整数でこれをどのように行うのですか?

6
条件付き置換パンダ
DataFrameがあり、特定の列の値を超える値をゼロに置き換えたい。これはこれを達成する方法だと思っていました: df[df.my_channel > 20000].my_channel = 0 チャネルを新しいデータフレームにコピーするのは簡単です。 df2 = df.my_channel df2[df2 > 20000] = 0 これは私が望んでいることとまったく同じですが、元のDataFrameの一部としてチャネルで機能していないようです。

8
Pandas groupby:文字列の結合を取得する方法
私はこのようなデータフレームを持っています: A B C 0 1 0.749065 This 1 2 0.301084 is 2 3 0.463468 a 3 4 0.643961 random 4 1 0.866521 string 5 2 0.120737 ! 呼び出す In [10]: print df.groupby("A")["B"].sum() 戻ります A 1 1.615586 2 0.421821 3 0.463468 4 0.643961 ここで、「C」列についても「同じ」を行います。その列には文字列が含まれているため、sum()は機能しません(文字列を連結すると思われるかもしれませんが)。私が本当に見たいのは、各グループの文字列のリストまたはセットです。 A 1 {This, string} 2 {is, …
122 python  pandas 

3
各行の最大値を持つ列名を見つけます
私はこのようなデータフレームを持っています: In [7]: frame.head() Out[7]: Communications and Search Business General Lifestyle 0 0.745763 0.050847 0.118644 0.084746 0 0.333333 0.000000 0.583333 0.083333 0 0.617021 0.042553 0.297872 0.042553 0 0.435897 0.000000 0.410256 0.153846 0 0.358974 0.076923 0.410256 0.153846 ここでは、各行の最大値を持つ列名を取得する方法を尋ねたいのですが、望ましい出力は次のようになります。 In [7]: frame.head() Out[7]: Communications and Search Business General Lifestyle Max 0 0.745763 …
122 python  pandas  dataframe  max 

8
1つの割り当てで複数の列をパンダデータフレームに追加する方法
私はパンダが初めてで、複数の列をパンダに同時に追加する方法を理解しようとしています。ここでどんな助けでもありがたいです。理想的には、これを複数のステップを繰り返すのではなく、1つのステップで実行したいと思います... import pandas as pd df = {'col_1': [0, 1, 2, 3], 'col_2': [4, 5, 6, 7]} df = pd.DataFrame(df) df[[ 'column_new_1', 'column_new_2','column_new_3']] = [np.nan, 'dogs',3] #thought this would work here...
122 python  pandas  dataframe 

3
パンダの適用関数で行のインデックスを取得する
DataFrameパンダ全体に適用される関数の行のインデックスにアクセスしようとしています。私はこのようなものを持っています: df = pandas.DataFrame([[1,2,3],[4,5,6]], columns=['a','b','c']) >>> df a b c 0 1 2 3 1 4 5 6 与えられた行の要素にアクセスする関数を定義します def rowFunc(row): return row['a'] + row['b'] * row['c'] 次のように適用できます: df['d'] = df.apply(rowFunc, axis=1) >>> df a b c d 0 1 2 3 7 1 4 5 6 34 驚くばかり!次に、インデックスを関数に組み込みたい場合はどうなりますか?これDataFrameを追加dする前のこの行のインデックスはIndex([u'a', u'b', …
121 python  pandas  dataframe 


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