你如何使用.loc和.apply来修改pandas中的数据?

时间:2018-03-06 05:15:34

标签: python function pandas apply

我有一个Dataframe,一列充满了单词列表。我正在使用一个函数来删除不在辅助列表中的所有单词。当我使用apply来修剪我的列表时,我收到警告,告诉我应该使用.loc,但我不确定如何正确使用它。

这是我的功能

    def trimTo20(tweet):   

        for check in reversed(tweet):
            if check not in over20Hash:
                tweet.remove(check)

        return(tweet)

这是我的电话

    group20.sumText = group20.sumText.apply(trimTo20)

这是警告。

    Anaconda3\lib\site-packages\pandas\core\generic.py:3110: 
    SettingWithCopyWarning: 
    A value is trying to be set on a copy of a slice from a DataFrame.
    Try using .loc[row_indexer,col_indexer] = value instead

    See the caveats in the documentation: http://pandas.pydata.org/pandas-
    docs/stable/indexing.html#indexing-view-versus-copy
      self[name] = value

这是我的Dataframe的一部分

        UserID  sumText
    3   1644    [#life, #contentmarketing, #ContentMarketing]
    5   1737    [@SwiftOnSecurity, @erinscafe, @ComfortablySmug]
    8   2391    [@, @MikeIsaac, @fmanjoo, @rtraister, @TheCut, @twitter]
    10  2426    [@MikeIsaac, @GOP, @united, @facebook, @gruber]

我的数据框中的一切都很好,我是否应该担心某些数据没有正确复制?我用过这种方式应用了几次而且没有得到这个警告。

0 个答案:

没有答案