Python 如何处理';缺少键值';在CSV字典中并在数据框中工作?

Python 如何处理';缺少键值';在CSV字典中并在数据框中工作?,python,csv,dataframe,dictionary,data-analysis,Python,Csv,Dataframe,Dictionary,Data Analysis,我想拒绝熊猫数据框中缺少键值的记录,只分配CSV中存在的记录。例如,只匹配提到“价格”的那些“名称” “名称”“价格” Ram 100 约翰200 丹 迈克500 卡普里 您可以使用: df.dropna() 它将删除整行的空值 要计数具有NaN值的行,请执行以下操作: df.shape[0] - df.dropna().shape[0] # 2 如果您的计数与地图匹配,您可以这样做: dictionary= {'Ram':100,'John':200,'Mike':500} len(

我想拒绝熊猫数据框中缺少键值的记录,只分配CSV中存在的记录。例如,只匹配提到“价格”的那些“名称”

“名称”“价格”
Ram 100
约翰200
丹
迈克500
卡普里
您可以使用:

df.dropna() 
它将删除整行的空值

要计数具有NaN值的行,请执行以下操作:

df.shape[0] - df.dropna().shape[0] 
# 2
如果您的计数与地图匹配,您可以这样做:

dictionary= {'Ram':100,'John':200,'Mike':500}

len(df[df.Names.map(dictionary).fillna(0) ==0])                                                                                                                                     
# 2

len(df[df.Names.map(dictionary).fillna(0) >0])                                                                                                                                      
# 3
您可以使用:

df.dropna() 
它将删除整行的空值

要计数具有NaN值的行,请执行以下操作:

df.shape[0] - df.dropna().shape[0] 
# 2
如果您的计数与地图匹配,您可以这样做:

dictionary= {'Ram':100,'John':200,'Mike':500}

len(df[df.Names.map(dictionary).fillna(0) ==0])                                                                                                                                     
# 2

len(df[df.Names.map(dictionary).fillna(0) >0])                                                                                                                                      
# 3

不清楚。是否将现有数据帧与单独的csv进行比较?这样做是有用的。请同时阅读。什么值是“键”?在示例中“键”为“名称”,并为其指定了“价格”。我只需要保留那些“价格”可用的记录。我的字典是CSV格式的,我正在通过Python访问我的DF。。。尽管有多处评论,但这一点仍相当不清楚……不清楚。是否将现有数据帧与单独的csv进行比较?这样做是有用的。请同时阅读。什么值是“键”?在示例中“键”为“名称”,并为其指定了“价格”。我只需要保留那些“价格”可用的记录。我的字典是CSV格式的,我正在通过Python访问我的DF。。。尽管有多条评论,这仍然很不清楚…我认为OP希望“拒绝”没有“键”值的行(但可能有其他行,因此不是完全空的)。感谢您的快速回复。我还需要计算数据帧中缺少字典值的列拒绝的记录数。您的想法将受到高度赞赏。@Rahul我在回答中补充说,我希望这对Hanks有所帮助。谢谢。您通过索引访问了形状。如果我想通过列名访问该怎么办。我有200多个专栏。因此,按名称访问将很容易。任何建议。您可以按相同的方式在每列中使用它,这就是您的意思:df['price'].shape[0]-df['price'].dropna().shape[0]我认为OP希望“拒绝”没有“key”值的行(但可能有其他行,因此不是完全空的)。感谢您的快速回复。我还需要计算数据帧中缺少字典值的列拒绝的记录数。您的想法将受到高度赞赏。@Rahul我在回答中补充说,我希望这对Hanks有所帮助。谢谢。您通过索引访问了形状。如果我想通过列名访问该怎么办。我有200多个专栏。因此,按名称访问将很容易。任何建议。您可以按相同的方式在每列中使用它,这就是您的意思:df['price'].shape[0]-df['price'].dropna().shape[0]