pandas 如何用python打印excel列非空值?

3bygqnnd  于 2023-01-11  发布在  Python
关注(0)|答案(2)|浏览(201)

我有以下excel表:

并且希望在列2的值不为空时打印列1的值。输出应为[1,3]。
这是我创建的脚本,但它不工作:

import xlrd
import pandas as pd

filename='test.xlsx'
dataframe = pd.read_excel(filename)
frame = dataframe.loc[dataframe["col2"] !=" "]
df =  frame.iloc[:, 0]

ndarray = df.to_numpy()
print(ndarray)
olmpazwi

olmpazwi1#

可以先筛选到nona行,然后显示要显示的列的值:

dataframe[df['col2'].notna()]['col1'].values
n6lpvg4x

n6lpvg4x2#

如果打印 Dataframe ,您将看到空单元格为NaN

Col1 Col2
 0     1    a
 1     2  NaN
 2     3    b
 3     4  NaN

因此,您需要使用notna()方法来过滤
下面是您的固定代码:

import xlrd
import pandas as pd

filename='test.xlsx'
dataframe = pd.read_excel(filename)
frame = dataframe.loc[dataframe["col2"].notna()]
df =  frame.iloc[:, 0]

ndarray = df.to_numpy()
print(ndarray)

相关问题