【发布时间】:2021-02-18 18:27:27
【问题描述】:
在 pandas 中,为整个数据框或特定列设置数据类型非常容易。
我很难找到有关仅更改特定行数据类型的文档。
我的数据框是这样的。
df = pd.DataFrame({"idx": ['Unit', 'From', 'To'],
"Length": ['Meter', 32.5, 65],
"Weight": ['Kg', 7, 44.7]})
df.set_index("idx")
默认情况下,pandas 会将所有内容设置为对象(字符串)。
我希望将第一行视为 string,并将第二和第三行视为 float。
这可能吗?
【问题讨论】:
-
不认为这是可能的。 Pandas 以列方式运行。如果将第一行更改为字符串,则
Length列中的所有值都将变为 object dtype。 -
看看你是怎么创建dataframe的,你传的是string value,panda不知道是float~
-
行没有数据类型,列有。
-
@BEN_YO 这是我创建示例时的错误,我将对其进行编辑。如果我将它们作为浮点数传递,它们会在行级保留为浮点数,即使在同一列中也存在字符串?
-
补充说明