簡體   English   中英

Python:Pandas - 數據幀中的對象到字符串類型轉換

[英]Python:Pandas - Object to string type conversion in dataframe

我正在嘗試使用 Pandas 在我的數據框中將對象轉換為字符串。 有以下數據:

particulars
NWCLG 545627 ASDASD KJKJKJ ASDASD
TGS/ASDWWR42045645010009 2897/SDFSDFGHGWEWER
dtype:object

在嘗試使用astype()[with str, |S, |S32, |S80] 類型或直接使用 str 函數將特定列從對象轉換為字符串時,它不會在字符串(保留對象)和str 方法中進行轉換[替換'/' with ' ']它說AttributeError: 'DataFrame' object has no attribute 'str'

使用熊貓 0.23.4

另請參考: https : //github.com/pandas-dev/pandas/issues/18796

你可以讀取Excel的指定dtypestr

df = pd.read_excel("Excelfile.xlsx", dtype=str)

然后particulars列中使用字符串替換,如下所示:

df['particulars'] = df[df['particulars'].str.replace('/','')]

請注意, df 分配也是 '[]' 括號中的數據框。

當您在程序中使用以下命令時,它會返回一個您嘗試分配給數據框列的字符串。 因此錯誤。

df['particulars'] = df['particulars'].str.replace('/',' ')

您可以使用:

df['particulars'] = df['particulars'].astype('|S')

或者:

df['particulars'] = df['particulars'].astype(str)

然后使用下面的,實際上str屬性甚至在你的情況下也可以工作,只是你以錯誤的方式訪問它,你只能訪問它到列( Series es):

df['particulars'] = df['particulars'].str.replace('/',' ')

那么現在:

print(df)

會得到想要的結果。

編輯:

我意識到你可以制作下面的整個代碼,因為object代表str

df['particulars'] = df['particulars'].astype(str).str.replace('/',' ')

我正在嘗試使用pandas將對象轉換為數據框中的字符串。 具有以下數據:

particulars
NWCLG 545627 ASDASD KJKJKJ ASDASD
TGS/ASDWWR42045645010009 2897/SDFSDFGHGWEWER
dtype:object

嘗試使用astype()[使用str,| S,| S32,| S80]類型或直接使用str函數明細列從對象轉換為字符串時,它不是在字符串(保留對象)中轉換,也不在用str方法轉換[替換'/'與'']表示AttributeError: 'DataFrame' object has no attribute 'str'

使用熊貓0.23.4

另請參閱: https : //github.com/pandas-dev/pandas/issues/18796

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM