学习pandas的时候,遇到两个问题实在搞不懂想问一下各位

一.使用loc时astype转化不了类型,如下图所示

img


这是表的前几行数据↑

img


↑使用loc时目标列的数据类型无法强制转换,还是object类型

二.使用协方差和相关系数矩阵函数时,无法自动跳过非int或者float类型的数据,执行不了,报错

img

img

谢谢各位大_神解惑

有人吗

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/7478207
  • 除此之外, 这篇博客: pandas处理数据之loc切片的用法中的 loc的深度用法 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    1、loc 不仅可以输入数字也可以直接column名字,注意先行后列

    df.loc[[0, 1, 10, 100], ['country', 'province', 'region_1', 'region_2']]

    表示index(行)为0,1,10,100,列名为'country', 'province', 'region_1', 'region_2'。
    2、

     df.loc[df.country=='Italy']

    选取country 列全是‘Italy’的数据

    3、这两种写法等同,注意isin()的用法

    df_final = df[df.country.isin(["Italy", "France"]) & (df.points >= 90)].country
    df = df[df.points>=90]
    df_final = (df.loc[df.country.isin(['France','Italy']),'country'])

     

     

     


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^