Python中有没有办法从字符串列中提取最后2个字符并将其转换为数字列?

Python中有没有办法从字符串列中提取最后2个字符并将其转换为数字列?,python,pandas,Python,Pandas,我想从该列中提取最后两个字符,并用相同的代码将其转换为整型列 QUARTER_COLUMN FY19 FY18 FY17 这将提取字符,但不会在同一代码中转换为整数列。您可以使用astype方法 QUARTER_COLUMN FY19 FY18 FY17 df1['QUARTER_COLUMN'].str[-2:] 您仍然需要将返回的序列保存到数据帧中 df1['QUARTER_COLUMN'].str[-2:].astype(int) 您可以使用astype方法 df1['QUARTE

我想从该列中提取最后两个字符,并用相同的代码将其转换为整型列

QUARTER_COLUMN
FY19
FY18
FY17

这将提取字符,但不会在同一代码中转换为整数列。

您可以使用
astype
方法

QUARTER_COLUMN
FY19
FY18
FY17
df1['QUARTER_COLUMN'].str[-2:]
您仍然需要将返回的序列保存到数据帧中

df1['QUARTER_COLUMN'].str[-2:].astype(int)

您可以使用
astype
方法

df1['QUARTER_COLUMN'].str[-2:]
您仍然需要将返回的序列保存到数据帧中

df1['QUARTER_COLUMN'].str[-2:].astype(int)

或者可以尝试使用
pd.to\u numeric

df1['year'] = df1['QUARTER_COLUMN'].str[-2:].astype(int)
请参见数据类型

>>> df = df.assign(Years=df.QUARTER_COLUMN.str[-2:])
>>> df['Years'] =  pd.to_numeric(df['Years'], errors='coerce')
>>> df
  QUARTER_COLUMN  Years
0           FY19     19
1           FY18     18
2           FY17     17

甚至您也可以按如下方式尝试指定列名:

>>> df.dtypes
QUARTER_COLUMN    object
Years              int64
dtype: object
执行
str.extract

>>> df = df.assign(Year=df.QUARTER_COLUMN.str[-2:].astype('int'))
>>> df
  QUARTER_COLUMN  Year
0           FY19    19
1           FY18    18

或者可以尝试使用
pd.to\u numeric

df1['year'] = df1['QUARTER_COLUMN'].str[-2:].astype(int)
请参见数据类型

>>> df = df.assign(Years=df.QUARTER_COLUMN.str[-2:])
>>> df['Years'] =  pd.to_numeric(df['Years'], errors='coerce')
>>> df
  QUARTER_COLUMN  Years
0           FY19     19
1           FY18     18
2           FY17     17

甚至您也可以按如下方式尝试指定列名:

>>> df.dtypes
QUARTER_COLUMN    object
Years              int64
dtype: object
执行
str.extract

>>> df = df.assign(Year=df.QUARTER_COLUMN.str[-2:].astype('int'))
>>> df
  QUARTER_COLUMN  Year
0           FY19    19
1           FY18    18