如何将数据帧更改为多索引数据帧?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (22)

我的数据是:

Date    Code    Buying_Date Buying_Price
20140328    2920    20140211    4290
20140328    3200    20140218    122500
20140328    43370   20140328    21500
20140331    8730    20140204    12150
20140331    13030   20140205    28100
20140331    15750   20140319    13336
20140331    107590  20140324    32889
20140331    3090    20140327    7894
20140331    17390   20140327    123500
20140331    43370   20140328    21500
20140401    8730    20140204    12150
20140401    13030   20140205    28100
20140401    4100    20140205    715

我的期望结果是“日期”和“代码”列变为多索引和数据集:

Date    Code    Buying_Date Buying_Price
20140328    2920    20140211    4290
            3200    20140218    122500
            43370   20140328    21500
20140331    8730    20140204    12150
            13030   20140205    28100
            15750   20140319    13336
            107590  20140324    32889
            3090    20140327    7894
            17390   20140327    123500
            43370   20140328    21500
20140401    8730    20140204    12150
            13030   20140205    28100
            4100    20140205    715
提问于
用户回答回答于

这样做:

import sys
import pandas as pd

if sys.version_info[0] < 3: 
    from StringIO import StringIO
else:
    from io import StringIO


data = StringIO("""20140328 2920 20140211 4290
20140328 3200 20140218 122500
20140328 43370 20140328 21500
20140331 8730 20140204 12150
20140331 13030 20140205 28100
20140331 15750 20140319 13336
20140331 107590 20140324 32889
20140331 3090 20140327 7894
20140331 17390 20140327 123500
20140331 43370 20140328 21500
20140401 8730 20140204 12150
20140401 13030 20140205 28100
20140401 4100 20140205 715""")

df = pd.read_csv(data, sep=" ", names=['Date', 'Code', 'Buying_Date', 'Buying_Price'])

df.set_index(['Date','Code'])

所属标签

可能回答问题的人

  • uncle_light

    5 粉丝518 提问7 回答
  • 学生

    3 粉丝476 提问7 回答
  • o o

    4 粉丝494 提问5 回答
  • 富有想象力的人

    3 粉丝0 提问5 回答

扫码关注云+社区

领取腾讯云代金券