我正在尝试从特定的.csv文件创建可用的Pandas数据帧。该文件有一列用于标识行所用数据的测试类型,两列用于标识正在测量的设备,其余列包含数据。
输入.csv文件遵循以下格式:
testtype1, device1name, device1info, meas_1, meas_2, meas_3, ... ... , meas_n
testtype2, device1name, device1info, meas_1, meas_2, meas_3, ... ... , meas_n
testtype3, device1name, device1info, meas_1, meas_2, meas_3, ... ... , meas_n
testtype1, device2name, device2info, meas_1, meas_2, meas_3, ... ... , meas_n
testtype2, device2name, device2info, meas_1, meas_2, meas_3, ... ... , meas_n
testtype2, device2name, device2info, meas_1, meas_2, meas_3, ... ... , meas_n
... ... ... ... ... ... ...
等等。我试图将这些数据转换为这种格式:
devicename deviceinfo testtype1 testtype2 testtype3
device1name device1info meas_1 meas_1 meas_1
device1name device1info meas_2 meas_2 meas_2
device1name device1info meas_3 meas_3 meas_3
... ... ... ... ...
device1name device1info meas_n meas_n meas_n
device2name device2info meas_1 meas_1 meas_1
device2name device2info meas_2 meas_2 meas_2
... ... ... ... ...
我使用pd.read_csv(filename)
读取文件,但是一旦我收到数据,我就会卡住。我已经看过使用df.pivot
,并且还将数据帧切片与测量值一起转置,但是我不知道从哪里开始。我是Python的新手,所以任何帮助都会非常感激!
答案 0 :(得分:0)
数据透视表是执行此操作的正确方法 - 慢慢启动 - 然后增加复杂性。
从数据的外观
getCacheDir()
如果你想做一些 numpy 数学调用你会添加一个
new_df = pd.pivot_table(orig_dataframe,index=['device1name','device1info'],values=['Col1','Col2'])
到pivot_table调用