繁体   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