2016-09-19 15 views
0

私は一意のIDを持つ列を持つDataFrameを持っています。その同じIDは、私が使用する機能のために他の場所で使用されます。関数内の個々のIDのいずれかを使用しても問題はありませんが、関数内でこれらのIDのサブセットを使用して、それを新しいDataFrameに追加したいと考えています。 、私は1つのIDを使用して、私の機能を実行すると関数内で1つのDataFrameの列を使用する - Python

Subset_Df 

+---+------------+-------------+-------------+ 
| | Unique ID |  A  |  B  | 
+---+------------+-------------+-------------+ 
| 2 | 234567  | yyyyy  | bbbbb  | 
| 3 | 345678  | zzzzz  | ccccc  | 
| 5 | 567890  | vvvvv  | eeeee  | 
+---+------------+-------------+-------------+ 

:私はそうのような別のDatFrameにおけるそれらの値のサブセットを持って

First_Df 

+---+------------+-------------+-------------+ 
| | Unique ID |  A  |  B  | 
+---+------------+-------------+-------------+ 
| 1 | 123456  | xxxxx  | aaaaa  | 
| 2 | 234567  | yyyyy  | bbbbb  | 
| 3 | 345678  | zzzzz  | ccccc  | 
| 4 | 456789  | uuuuu  | ddddd  | 
| 5 | 567890  | vvvvv  | eeeee  | 
| 6 | 678901  | wwwww  | fffff  | 
+---+------------+-------------+-------------+ 

これが私の基本データフレームのように見えるものです私の関数は正しい値を持つDFを返しますが、IDのサブセットリストを渡そうとするとValueErrorが返されます:JSONオブジェクトがデコードできません。

Function123(Subset_Df['Unique ID'],arg1,arg2) 

ありがとうございました。必要に応じて、特定の行のコードを提供することができます。

EDIT:これは私の基本データフレームのように見えるものである

all_players_df.head(6) 

+---+------------+---------------+-------------+-------------+ 
| | PERSON_ID |DISPLAY_LAST.. |TEAM_CITY |TEAM_CITY | 
+---+------------+---------------+-------------+-------------+ 
| 1 | 123456  |Adams, Jordan | Memphis  | Grizzlies | 
| 2 | 234567  |Anderson, Alan | LA   | Clippers | 
| 3 | 345678  |Ayres, Jeff | LA   | Clippers | 
| 4 | 456789  |Aldrich, Cole | Minnesota | Timberwolves| 
| 5 | 567890  |Albrines,Alex |Oklahoma City| Thunder  | 
| 6 | 678901  |Bass,Brandon | LA   | Clippers | 
+---+------------+---------------+-------------+-------------+ 

私はそうのような別のデータフレームにおけるそれらの値のサブセットを持っている:

clippers_players_df.head(3) 

+---+------------+---------------+-------------+-------------+ 
| | PERSON_ID |DISPLAY_LAST.. |TEAM_CITY |TEAM_CITY | 
+---+------------+---------------+-------------+-------------+ 
| 2 | 234567  |Anderson, Alan | LA   | Clippers | 
| 3 | 345678  |Ayres, Jeff | LA   | Clippers | 
| 5 | 678901  |Bass,Brandon | LA   | Clippers | 
+---+------------+---------------+-------------+-------------+ 

それから私は」関数を実行する:

player_shooting_stats_overall_df(234567,'2015-16','Playoffs') 

これを実行すると、その関数の正しい返されたDFを取得しますが、自分の関数を通してクリッパーのPERSON_IDを実行します。試してみます:

player_shooting_stats_overall_df(clippers_players_df['PERSONID'],'2015-16','Playoffs') 

これは私がエラーValueErrorを取得するところです:いいえ、JSONオブジェクトはデコードできませんでした。

+0

これらの特定のコード行を入力してください。 –

+0

ありがとうございます。私は上記の投稿を編集しました。 –

答えて

0

あなたの関数は、あなたがpandasシリーズ(つまりデータフレームの列)を渡している間、入力としてスカラーを取ります。要素ごとの操作の場合はpandas.Series.apply()とします。その他の位置引数については、argsキーワードを使用してください。

dfSeries = clippers_players_df['PERSONID'].apply(player_shooting_stats_overall_df, 
               args=('2015-16','Playoffs')) 

dfが関数の戻り値であると仮定すると、上では一連の複数のデータフレームを作成することに注意してください。すべてを1つのデータフレームにまとめるには、系列をリストに変換してからpd.concat()を使用してください:

​​
+0

ありがとうございます。これはうまくいった。適用されるドキュメントについては、さらに詳しく説明します。 –

関連する問題