第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

僅選擇包含特定字符的列

僅選擇包含特定字符的列

慕村225694 2023-08-15 17:30:20
我有一個(gè)最初存儲(chǔ)為所有類型 str 的數(shù)字 df ,有時(shí)列中的數(shù)據(jù)存儲(chǔ)為百分比,但并不總是相同的列。我不知道哪一列是百分比還是數(shù)字。如果它存儲(chǔ)為百分比,我需要將其轉(zhuǎn)換為小數(shù)。如何找到哪些列是百分比,然后僅將這些列轉(zhuǎn)換為小數(shù)一個(gè)例子name  date  col1  col2  col3  col4a     9/17  1.23  4.90% 3.00  100.00%b     9/17  2.00  6.10% 5.00  253.90%c     9/17  6.71  7.90% 7.00  98.00%期望的輸出:name  date  col1  col2  col3  col4a     9/17  1.23  0.049 3.00  1.00b     9/17  2.00  0.061 5.00  2.539c     9/17  6.71  0.079 7.00  0.98我試過df=df.apply(pd.to_numeric, errors="ignore")df.iloc[:,2:]=df.iloc[:,2:].apply(lambda x: x.str.strip('%').astype(float)/100, axis=1)但這是將所有類型為 float 的列設(shè)置為 nan。如果列一開始都是 str 類型,那么第二行會(huì)將所有值除以 100,這是我不想要的。因此我需要查找并選擇僅包含 % 的整個(gè)列就像是df.loc[:,df.apply(lambda x: x.str.contains("%"), axis=1)]除此之外,這將為您提供多維鍵錯(cuò)誤的索引
查看完整描述

2 回答

?
翻過高山走不出你

TA貢獻(xiàn)1875條經(jīng)驗(yàn) 獲得超3個(gè)贊

filter以下是使用和select_dtypes查找列的一種方法:


cols = df.filter(like="col").select_dtypes("object").columns

或者,您可以提取 1 行并查找%:


cols = df.columns[df.loc[0].astype(str).str.endswith("%")]

兩者都會(huì)為您提供列名稱。


df[cols] = df[cols].replace("%", "", regex=True).astype(float)/100


print (df)


  name  date  col1   col2  col3   col4

0    a  9/17  1.23  0.049   3.0  1.000

1    b  9/17  2.00  0.061   5.0  2.539

2    c  9/17  6.71  0.079   7.0  0.980


查看完整回答
反對(duì) 回復(fù) 2023-08-15
?
MMTTMM

TA貢獻(xiàn)1869條經(jīng)驗(yàn) 獲得超4個(gè)贊

這可能會(huì)讓您開始:


import numpy as np


def percent_to_float(percent: str) -> float:

    return float(percent[:-1])/100


df.select_dtype(object).apply(np.vectorize(percent_to_float))   

這將獲取所有列dtype=object(字符串?dāng)?shù)據(jù)存儲(chǔ)在dtype=objectin 中),并應(yīng)用將百分比字符串(如 )轉(zhuǎn)換為浮點(diǎn)數(shù)(如 )的pandas函數(shù)。4.5%0.045


查看完整回答
反對(duì) 回復(fù) 2023-08-15
  • 2 回答
  • 0 關(guān)注
  • 143 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)