Python iloc()与loc() 之数据格式的转变

Question:

      在对数据进行切片提取的时候,发现将某一切片数据提取出来加到一个新的dataframe里面后,其中int的数据类型发生了变化,变成了float型。对以下方面进行检测,找了其中的原因。

1.新建Dataframe的方法:(然鹅并不是这个问题)

df = pd.DataFrame()

2.连接两个dataframe的方法:(和append也无关)

df = df.append(user_df.iloc[i])
df = df.append(user_df.iloc[i, [0, 1, 2, 3]]) #只选取第1-4列的数据

>>>df类型为<class 'pandas.core.frame.DataFrame'>

但是!!问题也出在这句代码里,当我改成以下代码时

df = df.append(user_df.iloc[i:i+1]) ### 把i换成 i:i+1
df = df.append(user_df.iloc[i:i+1, [0, 1, 2, 3]]) #只选取第1-4列的数据


>>>后来的df类型为:<class 'pandas.core.frame.DataFrame'>

原因不详,但是id字段的数据类型没变了。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Python中,lociloc是用于在pandas中选择特定行和列的方法。 iloc是通过位置索引进行选择的方法。可以使用整数索引来选择特定的行和列。例如,使用iloc[0:2, 0:3]可以选择第一行到第二行和第一列到第三列的数据。 loc是通过标签进行选择的方法。可以使用行和列的标签来选择特定的数据。例如,使用loc[0:2, 'A':'C']可以选择标签为A到C的列和标签为0到2的行的数据。 这两种方法都可以用于选择特定的行和列,并且都有类似的语法。使用它们可以更加灵活地选择数据,满足不同的需求。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [python选取特定列 pandas iloc,loc,icol的使用详解(列切片及行切片)](https://download.csdn.net/download/weixin_38664989/12860773)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [pythonilocloc的用法](https://blog.csdn.net/qq_45699150/article/details/123590426)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值