我有一个数据集,其中有许多列按顺序排列:英文名称,国家/地区,濒危程度,发言人数。
在危害程度下,有4度脆弱,绝对濒临灭绝,严重濒临灭绝。
我想将数据集分类到这些类别中并将其放入自己的数据集中,仍将其他数据保留在其他列中
this image has the columns name on it
在jupyter笔记本上加载我的数据集 - 这是我得到的
if os.path.isfile("data.csv"):
filepath = "data.csv"
df = pd.read_csv(filepath)
df.head(300)
但我认为代码看起来像这样:
vulnerable = df[]
答案 0 :(得分:0)
你的意思是你想要每个危害程度的数据框吗?
以下是“易受攻击”的示例:
vulnerable_df = df[df['Degree of endangerment'] == 'vulnerable']
这是因为
df['Degree of endangerment'] == 'vulnerable'
根据它是否等同于弱势,给出一系列的真或假。 df[series_of_true_or_falses]
会返回原始数据框的副本,该副本仅包含True
中series_of_true_or_falses
的索引。
答案 1 :(得分:0)
除了ojunk发布的内容,另一种方法是使用isin():
import pandas as pd
df = pd.DataFrame({'Degree' : ['vulnerable', 'not vulnerable', 'endangered']})
vulnerable_df = df[df['Degree'].isin(['vulnerable'])]
输出:
Degree
0 vulnerable
输出仅包含易受攻击的数据集。