我已经看到很多关于基于 Pandas 列名进行排序的建议,但我正在尝试基于列索引进行排序。
我已经包含了一些代码来演示我正在尝试做什么。
import pandas as pd
df = pd.DataFrame({
'col1' : ['A', 'A', 'B', 'D', 'C', 'D'],
'col2' : [2, 1, 9, 8, 7, 4],
'col3': [0, 1, 9, 4, 2, 3],
})
df2 = df.sort_values(by=['col2'])
Run Code Online (Sandbox Code Playgroud)
我想对第二列都有不同名称的许多数据框进行排序。根据 (by=['col2'] 进行排序是不切实际的,但我总是想对第二列(即列索引 1)进行排序。这可能吗?
我正在尝试对熊猫数据帧进行一些简单的操作.我已将pandas导入pd并将numpy导入为np,并导入csv以创建名为'dfe'的数据框.
我已成功使用以下代码根据一个条件填充新列:
dfe['period'] = np.where(dfe['Time'] >= "07:30:00.000" , '1', '2')
Run Code Online (Sandbox Code Playgroud)
但是当我尝试使用类似的技术根据两个条件填充同一列时,我得到一个错误(&''bool'和'str'的不支持的操作数类型)
这是我对多条件版本的尝试:
dfe['period'] = np.where(dfe['Time'] >= "07:30:00.000" & dfe['Time'] <= "10:00:00.000" , '1', '2')
Run Code Online (Sandbox Code Playgroud)
我已经看过很多针对类似问题的解决方案,但是鉴于我刚刚开始并且希望有人可以给我一些关于为什么这不起作用的线索,它们对我来说有点太复杂了.
谢谢