Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 删除/删除名称以X开头的列*_Python_Pandas - Fatal编程技术网

Python 删除/删除名称以X开头的列*

Python 删除/删除名称以X开头的列*,python,pandas,Python,Pandas,我有以下数据和框架: raw = { 'A': [1, 10],'B': [100,1000],'logA': [0, 1], 'logB':[2,3]} df= pd.DataFrame(raw, columns=['A','B','logA','logB']) 如何删除所有以“log”开头的列?我已经尝试了df.drop(['logA','logB'],axis=1),但我想知道是否可以使用df.columns.str.startswith('log')是 选项1 使用loc和布尔索引 d

我有以下数据和框架:

raw = { 'A': [1, 10],'B': [100,1000],'logA': [0, 1], 'logB':[2,3]}
df= pd.DataFrame(raw, columns=['A','B','logA','logB'])
如何删除所有以“log”开头的列?我已经尝试了
df.drop(['logA','logB'],axis=1)
,但我想知道是否可以使用
df.columns.str.startswith('log')

选项1
使用
loc
和布尔索引

df.loc[:, ~df.columns.str.startswith('log')]

    A     B
0   1   100
1  10  1000

选项2
使用带有负前瞻正则表达式的
pd.DataFrame.filter

df.filter(regex='^(?!log)')

    A     B
0   1   100
1  10  1000

选项1
使用
loc
和布尔索引

df.loc[:, ~df.columns.str.startswith('log')]

    A     B
0   1   100
1  10  1000

选项2
使用带有负前瞻正则表达式的
pd.DataFrame.filter

df.filter(regex='^(?!log)')

    A     B
0   1   100
1  10  1000