Pandas - 尝试重新排列数据框中的行,但出现错误

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

我正在尝试重新排列数据框中索引行“Germany”的一行,但出现错误“ TypeError:'method'对象不支持项目分配”,代码如下,

import pandas as pd
import numpy as np 


combined_global_fx_currencies = r'x:\xxx\xxx\xxxxx\xxxxx\xxxxxx.xlsx'

global_fx = pd.read_excel(combined_global_fx_currencies)


global_fx['Country'] = ['United States', 'China', 'Euro Zone', 'Japan', 'United Kingdom', 'Australia', 'New Zealand', 'Russia', 'Saudi Arabia', 'Brazil', 'Mexico', 'Canada', 'Switzerlanter']

global_fx = global_fx.set_index('Country')

## Multiplying by 100, cause by default in pandas its not putting in Percetange Terms like it is on the Excel Filed

global_fx['3 Years']= global_fx['3 Years'] * 100
global_fx['1 Year']= global_fx['1 Year'] * 100
global_fx['YTD']= global_fx['YTD'] * 100
global_fx['1 Month']= global_fx['1 Month'] * 100
global_fx['1 Week']= global_fx['1 Week'] * 100 
global_fx['Daily']= global_fx['Daily'] * 100

## Add Row for Germany and equated to same values for the Euro Zone which is the Eur/USD

global_fx.loc['Germany'] = global_fx.loc['Euro Zone']
global_fx = global_fx.reset_index

global_fx['Country'] = ['United States', 'China', 'Euro Zone', 'Germany', 'Japan', 'United Kingdom', 'Australia', 'New Zealand', 'Russia', 'Saudi Arabia', 'Brazil', 'Mexico', 'Canada', 'Switzerland']

global_fx = global_fx.set_index('Country')

print(global_fx)


Error :  global_fx['Country'] = ['United States', 'China', 'Euro Zone', 'Germany', 'Japan', 'United Kingdom', 'Australia', 'New Zealand', 'Russia', 'Saudi Arabia', 'Brazil', 'Mexico', 'Canada', 'Switzerland'] TypeError: 'method' object does not support item assignment
python-3.x pandas dataframe row
1个回答
0
投票

下面是答案,它将“德国”行重新排列到第四行,并在该行中使用了正确的值。我想要的该行的值与“欧元区”行的值相同。正确使用了重新索引方法。代码如下,

# Rearranging Index and putting index row "Germany" in 3rd Row 
global_fx = global_fx.reindex(['United States', 'China', 'Euro Zone', 'Germany', 'Japan', 'United Kingdom', 'Australia', 'New Zealand', 'Russia', 'Saudi Arabia', 'Brazil', 'Mexico', 'Canada', 'Switzerland'])
print(global_fx)
© www.soinside.com 2019 - 2024. All rights reserved.