2016-07-11 46 views
0

大きなデータフレーム名dataframe1があります。 (ほんの数)例:(dataframe1内のすべてのSCREEN1のテキストのような)関数count_noun(STR)を使用Python Pandas:データフレーム内の単語数をカウントする

私はそれぞれの名前のテキストの単語数を計算したい
date     text        name 
1  I like you hair, do you like it    screen1 
2  beautiful sun and wind      screen2 
3  today is happy, I want to got school   screen3 
4  good movie         screen4 
5  thanks god         screen1 
6  you are my son and I love you    screen2 
7  the company is good       screen1 
8  no one can help me, only you     screen2 
9  the book is good and I read it everyday  screen3 
10  water is the source of love     screen4 
11  I like you hair, do you like it    screen1 
12  my love man is leaving      screen2 

。さらに、con_noun(str)はOKで終了します。

データフレームに同じ名前のすべてのテキストを抽出し、名詞の数を計算します。 count_noun(str)関数に注目しないでください。私はそれを終えました。

マイコード:

import pandas as pd 
import numpy as np 

screen_name_unique = list(set(dataframe1['name'])) 
for name in screen_name_unique: 
    dataframe_text = dataframe1[dataframe1.name == name] 
    count = noun_count(dataframe['text']) 



def noun_count (str): 
    words_len = len(str) 
    return words_len 

私はそれが間違って発見し、それを解決する方法がわからない、例えば文字列にすると機能に送信するすべてのNAME1のテキストを抽出:noun_count(STR)、感謝してください!あなたはこれについての詳細な情報を必要な場合

私はそれを解決した
+0

をカウントするために適用されます()関数を使用し、間違っている何 – tktktk0711

+0

教えてください?あなたはnoun_countをどうお知りになりますか?あなたは何も返さないので、カウントをプリントしてみてください。コメントのためにありがとう、noun_count()関数に焦点を合わせないでください。 – Merlin

+0

私はちょうど各名前のすべてのテキストを抽出し、名詞の単語の数を計算したい。私は各名前のテキストを抽出した後、どのように解決するかわかりません。次のステップは私には分かりません。 – tktktk0711

答えて

1

は、

import pandas as pd 
import numpy as np 

screen_name_unique = list(set(dataframe1['name'])) 
for name in screen_name_unique: 
    dataframe_text = dataframe1[dataframe1.name == name] 
    dataframe_text['text'].apply(noun_count) 



def noun_count (str): 
    words_len = len(str) 
    return words_len 
+0

'len(str)'は単語数ではなく文字数を計算します。 – user1930402

関連する問題