我有一个包含2列的文本文件,我需要选择其中的一列作为数组 其中包含200000,并从该数组中剪切了N个元素,然后将它们从前向后移动。
我使用了以下代码:
<android.support.v7.widget.Toolbar
android:layout_width="match_parent"
android:layout_height="?android:actionBarSize"
android:layout_gravity="bottom"
android:background="@android:color/transparent"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:contentInsetEnd="0dp"
app:contentInsetLeft="0dp"
app:contentInsetRight="0dp"
app:contentInsetStart="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_scrollFlags="scroll|enterAlways">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="visible"
app:layout_behavior="com.imi.utils.ScrollingToolbarBehavior"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent">
<include
android:id="@+id/bottomBarLayout"
layout="@layout/activity_custom_bottom_navigation" />
</LinearLayout>
</android.support.v7.widget.Toolbar>
它不起作用,并给我以下错误:
import numpy as np
import glob
files = glob.glob("input/*.txt")
for file in files:
data_file = np.loadtxt(file)
2nd_columns = data_file [:,1]
2nd_columns_array = np.array(2nd_columns)
cut = 62859 # number of elements to cut
remain_points = 2nd_columns_array[:cut]
cut_points = 2nd_columns_array[cut:]
new_array = cut_points + remain_points
有什么帮助吗?
答案 0 :(得分:0)
它不起作用,因为您试图添加存储在两个数组中的值,并且它们具有不同的形状。
其中一种方法是使用numpy.hstack:
new_array = np.hstack((2nd_columns_array[cut:], 2nd_columns_array[:cut]))
旁注:
for
循环之外cut_poinsts
或remain_points
存储在单独的变量中。您可以直接在2nd_columns_array
答案 1 :(得分:0)
此过程的一种简单方法是numpy.roll。
new_array = np.roll(2nd_column, cut)