PythonのRのseq_len、slice、およびどこに相当しますか?

ユングパデウォン

RからPythonに移行していますが、次のコードを複製するのに苦労しています。

df = df %>% group_by(ID) %>% slice(seq_len(min(which(F < 1 & d == 8), n()))

サンプルデータ:

ID     Price        F         D
 1      10.1       1          NAN
 1      10.4       1          NAN 
 1      10.6      .8           8
 1      8.1       .8          NAN
 1      8.5       .8          NAN 
 2      22.4       2          NAN
 2      22.1       2          NAN
 2      21.1      .9           8
 2      20.1      .9          NAN
 2      20.1      .9           6

目的の出力で:

ID     Price       F           D
 1      10.1       1          NAN
 1      10.4       1          NAN 
 2      22.4       2          NAN
 2      22.1       2          NAN

Pythonのコードには、np.where、cumcount()、sliceなどのコードが含まれていると思います。

しかし、私はこれをどのように行うのかわかりません。どんな助けでもいただければ幸いです、ありがとう。

編集:解決策を見つけることを望んで私の質問に来る将来の誰にでも-yatuの解決策はうまくいきました-しかし私はもう少し読みやすいことがわかった別の解決策に自分の道を歩みました:

df['temp'] = np.where((df['F'] < 1) & (df['D'] == 8), 1, 0)
mask = df.groupby(ID)['temp'].cumsum().eq(0)
df[mask]

マスキングについて少し読んだことがありますが、Pythonの複雑さをかなり単純化するのに本当に役立ちます!

yatu

次の条件を使用して、データフレームにインデックスを付けることができます。

c1 = ~df.Distro.eq(8).groupby(df.ID).cumsum()
c2 = df.Factor.lt(1).groupby(df.ID).cumsum().eq(0)
df[c1 & c2]

   ID  Price  Factor  Distro
0   1   10.1     1.0    NAN
1   1   10.4     1.0    NAN
5   2   22.4     2.0    NAN
6   2   22.1     2.0    NAN

.cumsumブール系列をとることにより、本質的にTrue値を伝播していることに注意してください。したがって、Trueが表示されるとすぐに、残りの値はになりますTrue否定されたこの結果は、値が表示されるとすぐにデータフレームから行を削除するために使用できます。


詳細

次のデータフレームは、元のデータフレームと、インデックス付けに使用される条件を示しています。この場合、指定された基準が同じ行で行われるとすると、両方の条件が同じ動作を示します。

df.assign(c1=c1, c2=c2)

   ID  Price  Factor Distro     c1     c2
0   1   10.1     1.0    NAN   True   True
1   1   10.4     1.0    NAN   True   True
2   1   10.6     0.8      8  False  False
3   1    8.1     0.8    NAN  False  False
4   1    8.5     0.8    NAN  False  False
5   2   22.4     2.0    NAN   True   True
6   2   22.1     2.0    NAN   True   True
7   2   21.1     0.9      8  False  False
8   2   20.1     0.9    NAN  False  False
9   2   20.1     0.9      6  False  False

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

PythonでのRのseq_len相当

分類Dev

Springは、GuiceのFactoryModuleBuilder、@ AssistedInject、および@Assistedに相当しますか?

分類Dev

Perl 6はJavaの>>および>>>演算子に相当しますか?

分類Dev

seq_lenを同等のRcppに変換する方法

分類Dev

seq_lenを同等のRcppに変換する方法

分類Dev

JavaScriptのスプラット演算子、Pythonの* argsおよび** kwargsに相当しますか?

分類Dev

PythonはPHPのnull合体演算子および短縮三項演算子に相当しますか?

分類Dev

zshおよびPOSIXはbashの `{var}>&1`に相当します

分類Dev

QWebEngineのQWebElementおよびQWebElementCollectionに相当します

分類Dev

Pythonはintおよびlongをどのように管理しますか?

分類Dev

PythonのMatlabのti = 1:step:lenに相当します

分類Dev

TOP、DESC、およびCROSS APPLYは、このクエリをどのように高速化しますか?

分類Dev

dbplyr、dplyr、およびSQLに相当するものがない関数[例: `slice()`]

分類Dev

Java / Androidで#IFおよび#CONST .NETに相当するものはありますか?

分類Dev

`at`および` cron`ジョブの出力はどこに行きますか?

分類Dev

wildfly 12および13のhibernate-orm-modulesはどこにありますか?

分類Dev

このC ++ループに相当するものをRustでどのように記述しますか

分類Dev

Apache Felixのfeature:repo-addおよびfeature:installに相当します

分類Dev

PythonのSimpleHTTPServerdo_GETおよびdo_POST関数はどのように機能しますか?

分類Dev

IBMのlisおよびori命令はどのように機能しますか?

分類Dev

このQTの自動生成されたMakefileのmoc、rcc、およびuicの呼び出しはどこにありますか?

分類Dev

Google Cloud Functions APIのデータはどこに保存および取得しますか?

分類Dev

JavaのgetLeastSignificantBits()およびgetMostSignificantBitsに相当するPHPですか?

分類Dev

PythonとCおよびJavaを同時にどのように使用しますか?

分類Dev

PagedListAdapterおよびItemTouchHelperwith Room-onMove()中にどのように更新しますか

分類Dev

Pythonの__eq__および__bool__に相当するJava

分類Dev

PHPのforeach($ array as $ key => $ value)に相当するjavaおよびpython

分類Dev

順序に関係なく、Seqでモックが呼び出されたことをどのように確認しますか

分類Dev

この呼び出しはどのように呼び出されますか?

Related 関連記事

  1. 1

    PythonでのRのseq_len相当

  2. 2

    Springは、GuiceのFactoryModuleBuilder、@ AssistedInject、および@Assistedに相当しますか?

  3. 3

    Perl 6はJavaの>>および>>>演算子に相当しますか?

  4. 4

    seq_lenを同等のRcppに変換する方法

  5. 5

    seq_lenを同等のRcppに変換する方法

  6. 6

    JavaScriptのスプラット演算子、Pythonの* argsおよび** kwargsに相当しますか?

  7. 7

    PythonはPHPのnull合体演算子および短縮三項演算子に相当しますか?

  8. 8

    zshおよびPOSIXはbashの `{var}>&1`に相当します

  9. 9

    QWebEngineのQWebElementおよびQWebElementCollectionに相当します

  10. 10

    Pythonはintおよびlongをどのように管理しますか?

  11. 11

    PythonのMatlabのti = 1:step:lenに相当します

  12. 12

    TOP、DESC、およびCROSS APPLYは、このクエリをどのように高速化しますか?

  13. 13

    dbplyr、dplyr、およびSQLに相当するものがない関数[例: `slice()`]

  14. 14

    Java / Androidで#IFおよび#CONST .NETに相当するものはありますか?

  15. 15

    `at`および` cron`ジョブの出力はどこに行きますか?

  16. 16

    wildfly 12および13のhibernate-orm-modulesはどこにありますか?

  17. 17

    このC ++ループに相当するものをRustでどのように記述しますか

  18. 18

    Apache Felixのfeature:repo-addおよびfeature:installに相当します

  19. 19

    PythonのSimpleHTTPServerdo_GETおよびdo_POST関数はどのように機能しますか?

  20. 20

    IBMのlisおよびori命令はどのように機能しますか?

  21. 21

    このQTの自動生成されたMakefileのmoc、rcc、およびuicの呼び出しはどこにありますか?

  22. 22

    Google Cloud Functions APIのデータはどこに保存および取得しますか?

  23. 23

    JavaのgetLeastSignificantBits()およびgetMostSignificantBitsに相当するPHPですか?

  24. 24

    PythonとCおよびJavaを同時にどのように使用しますか?

  25. 25

    PagedListAdapterおよびItemTouchHelperwith Room-onMove()中にどのように更新しますか

  26. 26

    Pythonの__eq__および__bool__に相当するJava

  27. 27

    PHPのforeach($ array as $ key => $ value)に相当するjavaおよびpython

  28. 28

    順序に関係なく、Seqでモックが呼び出されたことをどのように確認しますか

  29. 29

    この呼び出しはどのように呼び出されますか?

ホットタグ

アーカイブ