Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/323.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 使用列标签将以下数据转换为长格式的最佳方法是什么?_Python_Pandas_Dataframe - Fatal编程技术网

Python 使用列标签将以下数据转换为长格式的最佳方法是什么?

Python 使用列标签将以下数据转换为长格式的最佳方法是什么?,python,pandas,dataframe,Python,Pandas,Dataframe,是否有一种巧妙的方法可以使用列标签将数据转换为长格式,如下所示 进入这个 numpy中的解决方案: arr = np.array([[1., 0., 0.], [1., 0., 0.], [0., 0.,1.], [0.,1.,0.]]) names = ['age01', 'age02', 'age03'] val = [float(names[ind][4:6]) for ind in np.where(arr == 1.)[1]] 该函数将放置age01、age02、。。。在单个“年龄

是否有一种巧妙的方法可以使用列标签将数据转换为长格式,如下所示

进入这个

numpy中的解决方案:

arr = np.array([[1., 0., 0.], [1., 0., 0.], [0., 0.,1.], [0.,1.,0.]])
names = ['age01', 'age02', 'age03']
val = [float(names[ind][4:6]) for ind in np.where(arr == 1.)[1]]
该函数将放置age01、age02、。。。在单个“年龄”列中。然后您需要将age01转换为1.0,age02转换为2.0等。或者尝试。