我目前正在进行情绪分析项目。当我尝试加载数据时,出现错误TypeError: '<=' not supported between instances of 'str' and 'int'
。所以我将str修改为一个int。但是,现在出现错误TypeError: cannot convert the series to <class 'int'>
。我该如何解决这个错误?
数据类型= dtype('O')
import pandas as pd
#read data
review_df = pd.read_csv( '/Users/mhnwong/Desktop/FYP potential/metropark_trans_demoji.csv')
#create label
review_df["is_bad_review"] = int(review_df["rate"]).apply(lambda x:1 if x <= 8 else 0)
# select only relevant columns
review_df = review_df[["review","is_bad_review"]]
review_df.head()
答案 0 :(得分:0)
您rate
文件中的metropark_trans_demoji.csv
列是否包含不属于数字的内容?
您应确保首先将rate
列的内容全部转换为int
。
假设rate
列的数据都属于int
,则可以编写
review_df["is_bad_review"] = review_df["rate"].apply(lambda x:1 if int(x) <= 8 else 0)
这会将rate
列的内容转换为int
,然后将其与8进行比较。
review_df["rate"]
的类型为<class 'pandas.core.series.Series'>
。无法将其直接转换为int
。