当我尝试清理正在使用的数据框时出现未知字符串格式错误

问题描述 投票:0回答:1

我正在尝试设置给定的数据,以便我可以分析时间序列数据。我是编码新手,尤其是 Python。

包含代码后,我不断收到错误: ParserError:未知的字符串格式:RegionType

但我不知道如何解决这个问题,任何帮助将不胜感激。

我有数据集 df =pd.read_csv('http://files.zillowstatic.com/research/public_csvs/zhvi/Zip_zhvi_uc_sfr_month.csv', 编码='拉丁')`

我已经用下面的代码得到了最大的帮助,但仍然得到一个我无法克服的错误:

# Convert columns that have dates to datetime
def get_datetimes(df):
    return pd.to_datetime(df.columns.values[9:], format='%Y-%m')
df.columns = list(df.columns[:9]) + list(get_datetimes(df))
df.head()

# convert zip code to col names
df = df.set_index('RegionName')
# transpose time series matrices
df = df.T
# convert indices to date time
df.index = pd.to_datetime(df.index)
df.head()
python string dataframe time-series data-cleaning
1个回答
0
投票

您的前 9 个索引(RegionID、SizeRank、RegionName、RegionType、StateName、State、City、Metro、CountyName)是字符串,因此不是可以转换为

datetime
的格式。

将索引转换为日期时间时,您需要执行的操作与转换列时已执行的操作类似:

# Convert columns that have dates to datetime
def get_datetimes(df):
    return pd.to_datetime(df.columns.values[9:], format='%Y-%m')
df.columns = list(df.columns[:9]) + list(get_datetimes(df))
df.head()

# convert zip code to col names
df = df.set_index('RegionName')
# transpose time series matrices
df = df.T
# convert indices to date time
df.index = list(df.index[:8]) + list(pd.to_datetime(df.index[8:]))
df.head()
© www.soinside.com 2019 - 2024. All rights reserved.