Dataframe not showing in Pycharm

PythonPandasPycharm

Python Problem Overview


I am using PyCharm 2016.2.1 . When I try to view a Pandas dataframe through the newly added feature 'View as DataFrame' in the debugger, this works as expected for a small (e.g. 4x4) DataFrame.

However when I try to view a DataFrame (generated by custom script) of ~10,000 rows x ~50 columns, I get the message: "Nothing to show".

When I run the same script (that generates the DataFrame) in Spyder, I am able to view it, so I am pretty sure it's not an error in my script.

Does anyone know if there is a maximum size to the DataFrames that can be viewed in PyCharm, and if there is a way to change this?

EDIT:

It seems that the maximum size allowed is 1000 x 15 , as in some cases it gets truncated to this size (when the number of rows is too large, but when there are too many columns pycharm just says 'nothing to show').

Still, I would like to know if there is a way to increase the maximum allowed rows and columns viewable through the DataFrame viewer.

Python Solutions


Solution 1 - Python

I have faced the same problem with PyCharm 2018.2.2. The reason was having a special character in a column's name as mentioned by Yunzhao .

If your having a column name like 'R&D' changing it to 'RnD' will fix the problem. It's really strange JetBrains hasn't solved this problem for over 2 years.

Solution 2 - Python

As you said in your edit, there's a limit on the number of columns (on my PC though it's far less than 15). However, you can see the whole thing by typing:

df.values

It will show you the whole dataframe, but without the names of the columns.


Edit:

To show the column names as well:

np.vstack([df.columns, df.values])

Solution 3 - Python

I have met the same problems. I figured it was because of the special characters in column names (in my case) In my case, I have "%" in the column name, then it doesn't show the data in View as DataFrame function. After I remove it, everything was correctly shown. Please double check if you also have some special characters in the column names.

Solution 4 - Python

This might be helpful for some people experiencing similar problem:

As of August 2019 SciView in PyCharm does struggle with displaying DataFrames that have contain nullable integer type, see issue on JetBrains

Solution 5 - Python

I use PyCharm 2019.1.1 (Community Edition). And when I used right-click "View as DataFrame". I get the message: "Nothing to show".

But when I click the object tail button "...View as DataFrame", it worked. enter image description here

I find out that my problem is my DataFrame Object is an Object's param. Right-click the "View as DataFrame" doesn't transfer the class name, need to user input the class's name and param's name.

Hope can help somebody.

Solution 6 - Python

In the case that you don't strictly need to use the functionalities given by the DataFrame viewer, you can print the whole DataFrame in the output window, using:

def print_full(x):
    pd.set_option('display.max_rows', len(x))
    print(x)
    pd.reset_option('display.max_rows')

Solution 7 - Python

I use PyCharm 2019.1.1 (Community Edition) and I run Python 3.7. When I first click on "View as DataFrame" there seems to be the same issue, but if I wait a few second the content pops up. For me it is a matter of loading.

Solution 8 - Python

In my situation, the problem is caused by two same cloumn name in my dataframe. Check it by:df.columns.shape[0] == len(set(df.columns))

Solution 9 - Python

For the sake of completeness: I face the same problem, due to the fact that some elements in the index of the dataframe contain a question mark '?'. One should avoid that too, if you still want to use the data viewer. Data viewer still worked, if the index strings contain hashes or less-than/greather-than signs though.

Solution 10 - Python

As of 2020-10-02, using PyCharm 2020.1.4, I found that this issue also occurs if the DataFrame contains a column containing a tuple.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionBartDurView Question on Stackoverflow
Solution 1 - PythonAhmadView Answer on Stackoverflow
Solution 2 - PythonAlaa M.View Answer on Stackoverflow
Solution 3 - PythonYunzhao XingView Answer on Stackoverflow
Solution 4 - PythonTomasz BartkowiakView Answer on Stackoverflow
Solution 5 - Pythonmichael jieView Answer on Stackoverflow
Solution 6 - PythonFilipeView Answer on Stackoverflow
Solution 7 - PythonNicolo CenedaView Answer on Stackoverflow
Solution 8 - Pythonxingpei PangView Answer on Stackoverflow
Solution 9 - PythonCappoView Answer on Stackoverflow
Solution 10 - PythonwfgeoView Answer on Stackoverflow