【问题标题】:Read excel file (pd.read_excel()) by skipping blank rows only通过仅跳过空白行来读取 excel 文件 (pd.read_excel())
【发布时间】:2019-12-11 20:12:13
【问题描述】:

我有一个如下的数据框。

    id       date       name    branch  position
0   20323   2019-02-03  Bete    H       IE
1   20326   2019-02-03  Veso    R       MGR
2   22357   2019-02-03  Nom     D       IE
3   20935   2019-02-06  Dow     A       MGR
4   NaN     NaT         NaN     NaN     NaN
5   20432   2019-02-07  Tem     W       MGR
6   23999   NaT         Bonny   NaN     NaN
7   21102   2019-02-07  Xi      A       IE

我只想删除空白行(例如:索引 4)。

我尝试使用df = pd.read_excel("../20191210/test.xlsx", skip_blank_lines=True)读取数据文件。

但是和df = pd.read_excel("..20191210/test.xlsx")的结果没有区别

Here 是文件的下载链接。

谁能帮我解决这个问题?

【问题讨论】:

  • 我认为 df.dropna(how='all') 就足够了
  • 我们应该如何帮助从 Excel 中读取没有任何数据或文件本身的文件?
  • @AlexanderCécile 对不起!我添加了下载文件的 URL

标签: python pandas dataframe


【解决方案1】:

这里是 df.dropna(how='all') 的示例:如果所有行都有 NaN,则没有 NaN

import pandas as pd
import numpy as np

dict = {'Col1':[100, 90, np.nan, 95],
        'Col2': [30, 45, np.nan, np.nan],
        'Col3':[np.nan, 40,np.nan, 98]}

df = pd.DataFrame(dict)
# With NaN
print(df)

# Without NaN
df = df.dropna()
print (df)

# Without NaN if all rows have NaN
df = df.dropna(how='all')
print (df)

【讨论】:

  • df.dropna(how='all') 正在工作。有什么方法可以在阅读时跳过行吗?
  • @Akira 我在谷歌搜索
  • 在您的 excel 中,NaN 值为 null 吗? N/A ?,,,为空?
  • 我为测试添加了空白行
  • 恐怕不行......我找不到你想要的......我希望我给你的代码可以是 util
【解决方案2】:

读完excel文件后试试df = df.dropna()

【讨论】:

  • df.dropna() 删除索引 6。
  • 我认为这会有所帮助:df = df.dropna(subset=['id'])
猜你喜欢
  • 2020-10-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-24
相关资源
最近更新 更多