打印不带省略号的numpy数组 [英] Print numpy array without ellipsis

查看:243
本文介绍了打印不带省略号的numpy数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想打印一个不被截断的numpy数组.我看过其他解决方案,但这些似乎无效.

I want to print a numpy array without truncation. I have seen other solutions but those don't seem to work.

这是代码段:

total_list = np.array(total_list)
np.set_printoptions(threshold=np.inf)
print(total_list)

这是输出的样子:

22        A
23        G
24        C
25        T
26        A
27        A
28        A
29        G
         ..
232272    G
232273    T
232274    G
232275    C
232276    T
232277    C
232278    G
232279    T

这是完整的代码.我在类型转换中可能犯了一个错误.

This is the entire code. I might be making a mistake in type casting.

import csv
import pandas as pd
import numpy as np



seqs = pd.read_csv('BAP_GBS_BTXv2_imp801.hmp.csv')
plts = pd.read_csv('BAP16_PlotPlan.csv')

required_rows = np.array([7,11,14,19,22,31,35,47,50,55,58,63,66,72,74,79,82,87,90,93,99])
total_list = []


for i in range(len(required_rows)):
    curr_row = required_rows[i];
    print(curr_row)
    for j in range(len(plts.RW)):
        if(curr_row == plts.RW[j]):
            curr_plt = plts.PI[j]
            curr_range = plts.RA1[j]
            curr_plt = curr_plt.replace("_", "").lower()
            if curr_plt in seqs.columns:
                new_item = [curr_row,curr_range,seqs[curr_plt]]
                total_list.append(new_item)
                print(seqs[curr_plt]) 


total_list = np.array(total_list)
'''
np.savetxt("foo.csv", total_list[:,2], delimiter=',',fmt='%s')
total_list[:,2].tofile('seqs.csv',sep=',',format='%s')
'''
np.set_printoptions(threshold='nan')

print(total_list)

推荐答案

使用以下代码段不要出现省略号.

use the following snippet to get no ellipsis.

import numpy
import sys
numpy.set_printoptions(threshold=sys.maxsize)

如果您有pandas.DataFrame,请使用以下代码片段打印数组:

If you have a pandas.DataFrame use the following snippet to print your array:

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

或者您可以使用 pandas.DataFrame. to_string()方法以获得所需的结果.

Or you can use the pandas.DataFrame.to_string() method to get the desired result.

编辑':

此帖子的早期版本建议使用以下选项

An earlier version of this post suggested the option below

numpy.set_printoptions(threshold='nan')

从技术上讲,这可能有效,但是numpy文档将int和None指定为允许的类型.参考: https://docs.scipy.org/doc/numpy/reference/generated/numpy.set_printoptions.html .

Technically, this might work, however, the numpy documentation specifies int and None as allowed types. Reference: https://docs.scipy.org/doc/numpy/reference/generated/numpy.set_printoptions.html.

这篇关于打印不带省略号的numpy数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆