Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 查找行之间的差异并将其格式化为新的DF_Python_Csv - Fatal编程技术网

Python 查找行之间的差异并将其格式化为新的DF

Python 查找行之间的差异并将其格式化为新的DF,python,csv,Python,Csv,这是我第一次在Python中使用数据帧。问题是: “计算每年占用住房单元数量的差异并打印。差异必须连续计算,如2008-2009、2009-2010等。最后,按升序打印数值。” 下面是我的代码。它确实有效,但我知道,除了我使用的蛮力手动数据输入方法外,还必须有一种更有效的方法来实现这一点: import pandas as pd import numpy as np url = 'https://raw.githubusercontent.com/unt-iialab/INFO5731_Spr

这是我第一次在Python中使用数据帧。问题是:

“计算每年占用住房单元数量的差异并打印。差异必须连续计算,如2008-2009、2009-2010等。最后,按升序打印数值。”

下面是我的代码。它确实有效,但我知道,除了我使用的蛮力手动数据输入方法外,还必须有一种更有效的方法来实现这一点:

import pandas as pd
import numpy as np

url = 'https://raw.githubusercontent.com/unt-iialab/INFO5731_Spring2020/master/Assignments/Assignment1_denton_housing.csv'
data = pd.read_csv(url, index_col=0)

A = data.loc[(data["title_field"]=="Occupied Housing Units") , ["title_field", 'value']]


data_2 = [['2008-2009', 35916-36711],['2009-2010', 41007-35916],['2010-2011', 40704-41007],['2011-2012', 42108-40704],['2012-2013', 43673-42108],['2013-2014', 46295-43673]]  
B = pd.DataFrame(data_2, columns = ['Years', 'Difference'])
sort_by_diff = B.sort_values('Difference') 

print(sort_by_diff)

这里有一个提示:可以使用
.shift()
从另一行中减去一行。不客气。澄清:使用
.shift()
获取数据帧的另一行以执行减法。