我想在第一列使用apply()
函数,仅用于第二列的特定值。
假设我有一个像这样的数据框
URL text
------- ---------
URL1
URL2 some text
当apply()
为空(或其他条件)时,我想在URL
列上使用text
函数。我试过这个
webdata['text'] = webdata.apply(lambda row: func(row['URL']) if row['text']== '' else row['text'])
func()
是我要打电话的功能。但我得到了这个错误。
('text',u'ccurred at index key')
有没有错误,或者有更好的方法吗?
答案 0 :(得分:1)
IIUC:
webdata.loc[webdata['text']=='', 'text'] = \
webdata.loc[webdata['text']=='', 'URL'].apply(func)