2016-12-05 8 views
-1

Pythonに新しく、私はいくつかの練習をしています。このコードラインがどのように機能し、なぜ機能するのか理解できません。PCTの変更式

それはなぜ、セル/行のすべての値をとり、開始値でそれを分割?

ヘルプははるかに高く評価:)

PSこれは私がちょうどここ

df['num2'] = (df['num2'] - df['num2'][0])/df['num2'][0] * 100.0 

.pct_change()のImが認識して)その背後にあるプロセスを理解しない、必要なものを正確であることは、全体のコード

です
import pandas as pd 

dates = pd.date_range('2010-01-01', periods = 7) 
df = pd.DataFrame(dates) 

nums = {'num2' : [1,2,4,8,16,32,64]} 
df2 = pd.DataFrame(nums) 

df = df.join(df2, how = 'left') 

df.rename(columns = {0 : 'Dates'}, inplace = True) 
df = df.set_index('Dates') 

#df = df.pct_change() 
df['num2'] = (df['num2'] - df['num2'][0])/df['num2'][0] * 100.0 

df.plot() 

print (df) 

答えて

1

これらの値は、時間従属変数の出現箇所です。あなたのコードは成長率を計算しているようです。

growth_rate = (what_it_is - what_it_was)/what_it_was 

を次のように本当に「クリーン」ではない何かが、それはorginal dictは、そうすることによって、情報の損失があることを意味し、これらの成長率によって値が含まれて変化することです。 (次にくるものがのpython-syntaxically正しくなくても場合

は、あなたのアイデアを与えるために、どのように行われていることである

([1,2,4,8,16,32,64] - 1)/1 
0
df['num2'] = df['num2'][1:]/df['num2'][:-1].values-1