1
私は、構成の悪いSQLテーブルから取得したデータフレームを持っています。そのテーブルは、すべてのチャネルのためのユニークな行を持つ 私はPythonのデータフレームにその情報を抽出し、さらに処理を行うつもりが、今のためだけに、より使用可能な形式python、pandas、dataframe、rows to columns
サンプル入力にそれを取得したいことができます:
C = pd.DataFrame()
A = np.array([datetime.datetime(2016,8,8,0,0,1,1000),45,'foo1',1])
B = pd.DataFrame(A.reshape(1,4),columns = ['date','chNum','chNam','value'])
C = C.append(B)
A = np.array([datetime.datetime(2016,8,8,0,0,1,1000),46,'foo2',12.3])
B = pd.DataFrame(A.reshape(1,4),columns = ['date','chNum','chNam','value'])
C = C.append(B)
A = np.array([datetime.datetime(2016,8,8,0,0,2,1000),45,'foo1',10])
B = pd.DataFrame(A.reshape(1,4),columns = ['date','chNum','chNam','value'])
C = C.append(B)
A = np.array([datetime.datetime(2016,8,8,0,0,2,1000),46,'foo2',11.3])
B = pd.DataFrame(A.reshape(1,4),columns = ['date','chNum','chNam','value'])
C = C.append(B)
は、私が欲しい
date chNum chNam value
0 2016-08-08 00:00:01.001000 45 foo1 1
0 2016-08-08 00:00:01.001000 46 foo2 12.3
0 2016-08-08 00:00:02.001000 45 foo1 10
0 2016-08-08 00:00:02.001000 46 foo2 11.3
作成し
date foo1 foo2
2016-08-08 00:00:01.001000 1 12.3
2016-08-08 00:00:02.001000 10 113
私は解決策があります:データフレームを通して各日付ループのためのユニークな日付のリストを作成し、各チャネルを引き離して、新しい行を作成します。面倒な(エラーが起こりやすい)の一種!