【问题标题】:Read Excel with data in Hindi in Python Pandas在 Python Pandas 中读取带有印地语数据的 Excel
【发布时间】:2021-04-11 22:08:21
【问题描述】:

我是 Python Pandas 的新手,正在开发一个小型应用程序,我想在其中读取包含印地语数据的 excel 文件。

我面临的问题是,熊猫无法阅读印地语单词并且正在放置一些任意的“?”符号。

我已尝试将编码添加到 utf-8,但这也不起作用。

我的 Excel 数据:

Python 代码:

df = pd.read_csv("Vegaretable_List.csv", encoding='utf-8')

输出:

['?? ' '??? ' '???? ' '????? ' '????']

任何帮助都将不胜感激。 提前致谢。

【问题讨论】:

  • 您需要找出输入文件的编码。它可能是别的东西。你也可以使用这个工具:r12a.github.io/app-conversion
  • 您需要像编解码器这样的语言转换器。 docs.python.org/3/library/codecs.html参考此链接
  • 尝试打开文件并保存为CSV UTF-8 (Comma delimited) (*.csv)
  • 仅供参考:彻底回答问题非常耗时。如果您的问题已解决,请通过接受最适合您的需求的解决方案表示感谢。 ✔ 位于答案左上角的向上/向下箭头下方。如果出现更好的解决方案,则可以接受新的解决方案。如果您的声誉超过 15,您还可以使用向上或向下箭头对答案的质量/有用性进行投票。 如果解决方案无法回答问题,请发表评论。 What should I do when someone answers my question?。谢谢。

标签: python python-3.x pandas dataframe csv


【解决方案1】:

如果使用与创建文件相同的编码读取文件,则不会出现此问题。

如果您收到"???",则表示 csv 或 excel 文件以不同的编码保存。

这是standard encodings的表格。

另外,您可以在适当的程序中打开您的文件,并使用UTF-8 保存它,以便使用您的代码读取。

另见:

【讨论】:

    【解决方案2】:

    不要创建 csv 文件,而是使用.xlsx 格式的 excel 文件。 Python 将读取印地语文本。我这样做了,它奏效了。

    dataset = pd.read_excel("Data.xlsx") 
    

    这里的Data.xlsx 包含您提供的所有印地语文本。

    祝你好运

    【讨论】:

      【解决方案3】:

      假设你的 Excel/CSV 文件有类似这样的内容:

      मिशल
      बहादुर
      मेरी
      जेन
      जॉन
      स्मिथ
      

      编码类型正确。只是您必须遍历数据才能将其取回。

      对于 .CSV

      import csv
      
      with open('customers.csv', 'r', encoding='utf-8') as file:
          data = csv.reader(file)
          for row in data:
              print(row)
      

      对于 .XLSX

      with open('customers.xlsx', 'r', encoding='utf-8') as file:
          data = file.readlines()
          for row in data:
              print(row.strip())
      

      【讨论】:

        猜你喜欢
        • 2017-06-04
        • 1970-01-01
        • 1970-01-01
        • 2013-06-08
        • 2023-03-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多