2024-09-30 22:12:41 发布
网友
我有一个数据框inp_df,其中包含带有建筑物编号的列'DEINR'。此列的类型为object,因为存在类似“44a”或“14c/1”的值。当我尝试执行inp_df['DEINR'].min()或.max()时,我得到一个错误:
inp_df
'DEINR'
inp_df['DEINR'].min()
.max()
'<=' not supported between instances of 'str' and 'float'
我应该怎么做才能使用此列执行最小/最大操作?谢谢
“DEINR”列中同时存在字符串值和浮点值。或者你可以隐蔽起来漂浮
DEINR列的数据类型是object,因为它同时具有float和str值。首先,需要将整个列转换为str类型,然后可以在该列上计算min()或max()
DEINR
float
str
min()
max()
d = {'col1': ['14c', 2], 'col2': ['432a', 4]} df = pd.DataFrame(data=d) df.dtypes
输出:
col1 object col2 object dtype: object
将列转换为str数据类型:
df['col1'] = df['col1'].astype(str) df['col1'].min()
'14c'
希望这就是你要找的
我通过捕捉打字错误解决了这个问题
minimum_values = pd.DataFrame(columns=['Minimum Value']) for v in list(inp_df.columns.values): try: minimum_values.loc[v] = [inp_df[v].min()] except TypeError: minimum_values.loc[v] ='N/A'
谢谢
“DEINR”列中同时存在字符串值和浮点值。或者你可以隐蔽起来漂浮
DEINR
列的数据类型是object,因为它同时具有float
和str
值。首先,需要将整个列转换为str
类型,然后可以在该列上计算min()
或max()
输出:
将列转换为
str
数据类型:输出:
希望这就是你要找的
我通过捕捉打字错误解决了这个问题
谢谢
相关问题 更多 >
编程相关推荐