如何删除包含某个数的列
时间 出入口 人流9 东门 100
9 西门 200
9 南门 300
10 东门 100
10 西门 200
10 南门 300
。。。。。。。。。。。。
请问大神,在python文件中,怎么包含‘东门’的行都删除? 你可以使用pandas库来删除包含某个数的列。首先,你需要将数据加载到一个pandas的DataFrame中。然后,你可以使用 drop 函数来删除包含特定值的行。
下面是一个示例代码:
import pandas as pd
# 加载数据到DataFrame
data = {
'时间': ,
'出入口': ['东门', '西门', '南门', '东门', '西门', '南门'],
'人流':
}
df = pd.DataFrame(data)
# 删除包含'东门'的行
df = df != '东门']
# 打印结果
print(df)
输出结果为:
时间 出入口 人流
1 9西门200
2 9南门300
410西门200
510南门300
在这个示例中,我们使用了布尔索引来选择不包含'东门'的行,并将结果保存到了同一个DataFrame中。 isdkz 发表于 2023-8-19 08:21
你可以使用pandas库来删除包含某个数的列。首先,你需要将数据加载到一个pandas的DataFrame中。然后,你可 ...
很奇怪,运行后是我都要的结果,但用了这个方法后,我后续的程序涉及到调用列名[行],就会报错,可否有另外的去掉包含东门的列的方法? 前后数据都是DATAFRAME的结果,列名也不变,就是无法调用了。 skyhouse 发表于 2023-8-19 08:45
很奇怪,运行后是我都要的结果,但用了这个方法后,我后续的程序涉及到调用列名[行],就会报错,可否有另 ...
不要把原来的覆盖掉就行了:
import pandas as pd
# 加载数据到DataFrame
data = {
'时间': ,
'出入口': ['东门', '西门', '南门', '东门', '西门', '南门'],
'人流':
}
df = pd.DataFrame(data)
# 删除包含'东门'的行
df1 = df != '东门']
# 打印结果
print(df1)
isdkz 发表于 2023-8-19 08:50
不要把原来的覆盖掉就行了:
试过,还是不行
File "C:\Users\Administrator\PycharmProjects\pythonProject\venv\lib\site-packages\pandas\core\indexes\base.py", line 3803, in get_loc
return self._engine.get_loc(casted_key)
base3803行的内容是
return self._engine.get_loc(casted_key)
except KeyError as err:
raise KeyError(key) from err
except TypeError:
# If we have a listlike key, _check_indexing_error will raise
#InvalidIndexError. Otherwise we fall through and re-raise
#the TypeError.
self._check_indexing_error(key)
raise 本帖最后由 skyhouse 于 2023-8-19 09:06 编辑
isdkz 发表于 2023-8-19 08:50
不要把原来的覆盖掉就行了:
完整的错误代码是这样的:
Traceback (most recent call last):
File "C:\Users\Administrator\PycharmProjects\pythonProject\venv\lib\site-packages\pandas\core\indexes\base.py", line 3803, in get_loc
return self._engine.get_loc(casted_key)
File "pandas\_libs\index.pyx", line 138, in pandas._libs.index.IndexEngine.get_loc
File "pandas\_libs\index.pyx", line 165, in pandas._libs.index.IndexEngine.get_loc
File "pandas\_libs\hashtable_class_helper.pxi", line 2263, in pandas._libs.hashtable.Int64HashTable.get_item
File "pandas\_libs\hashtable_class_helper.pxi", line 2273, in pandas._libs.hashtable.Int64HashTable.get_item
KeyError: 1119
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\Administrator\PycharmProjects\pythonProject\venv\Scripts\计算.py", line 28, in <module>
p = p + df['人流']
File "C:\Users\Administrator\PycharmProjects\pythonProject\venv\lib\site-packages\pandas\core\series.py", line 981, in __getitem__
return self._get_value(key)
File "C:\Users\Administrator\PycharmProjects\pythonProject\venv\lib\site-packages\pandas\core\series.py", line 1089, in _get_value
loc = self.index.get_loc(label)
File "C:\Users\Administrator\PycharmProjects\pythonProject\venv\lib\site-packages\pandas\core\indexes\base.py", line 3805, in get_loc
raise KeyError(key) from err
KeyError: 1119 skyhouse 发表于 2023-8-19 09:04
完整的错误代码是这样的:
Traceback (most recent call last):
File "C:%users\Administrator\Pyc ...
这个应该是相应的列名不存在导致的 isdkz 发表于 2023-8-19 09:07
这个应该是相应的列名不存在导致的
是否有其他去掉东门列的方法,有的话,麻烦提供下,我再试试 skyhouse 发表于 2023-8-19 09:21
是否有其他去掉东门列的方法,有的话,麻烦提供下,我再试试
没有了,其它方法都是一样的原理,
至于你的代码的问题需要给出完整的代码才能确定
页:
[1]