我有一个数据帧(在下面的代码中是"tst“),我想从它构造一个新的数据帧(我用”WhatIwant“命名)。简而言之:我删除了一些行和列,以找到减少的数据帧。除了删除行和列之外,还有什么(pythonic)方法可以直接做到这一点吗?
tst = pd.DataFrame({'a': np.arange(7), 'b': np.arange(8,15), 'c': np.arange(16,23), 'd': np.arange(24,31)})我想找到的是:
WhatIwant = pd.DataFrame({'a': [0,3,5], 'c': [16,19,21], 'd': [24,27,29]})谢谢
发布于 2018-09-04 04:28:10
Pandas已经为这些目的获得了loc访问器
>>> tst.loc[(0, 3, 5), ('a', 'c', 'd')]
a c d
0 0 16 24
3 3 19 27
5 5 21 29发布于 2018-09-04 04:28:36
假设您只需要行0, 3, 5而不是列b,那么:
In []:
WhatIwant = tst.loc[[0,3,5], tst.columns != 'b'].reset_index(drop=True)
WhatIwant
Out[]:
a c d
0 0 16 24
1 3 19 27
2 5 21 29https://stackoverflow.com/questions/52155827
复制相似问题