我创建了一个数据帧:如何从熊猫数据框中的列表中删除值?
[in] testing_df =pd.DataFrame(test_array,columns=['transaction_id','product_id'])
# Split the product_id's for the testing data
testing_df.set_index(['transaction_id'],inplace=True)
testing_df['product_id'] = testing_df['product_id'].apply(lambda row: row.split(','))
[out] product_id
transaction_id
001 [P01]
002 [P01, P02]
003 [P01, P02, P09]
004 [P01, P03]
005 [P01, P03, P05]
006 [P01, P03, P07]
007 [P01, P03, P08]
008 [P01, P04]
009 [P01, P04, P05]
010 [P01, P04, P08]
如何我现在可以删除的结果“P04”和“P08”?
我想:
# Remove P04 and P08 from consideration
testing_df['product_id'] = testing_df['product_id'].map(lambda x: x.strip('P04'))
testing_df['product_id'].replace(regex=True,inplace=True,to_replace=r'P04,',value=r'')
然而,无论是选择似乎工作。
的数据类型为:
[in] print(testing_df.dtypes)
[out] product_id object
dtype: object
[in] print(testing_df['product_id'].dtypes)
[out] object
请帮助,如果'product_id'是列表或字符串的列我明白了。 –
'product_id'是一个字符串列表的列,即 - '[“P01”,“P02”,“P03”]' – zsad512
您应该打印出类型的列清楚。 –