小编use*_*133的帖子

bash两个字符串的最长公共部分

我有以下字符串:“ abcdefx”,“ zzdefghij”我想提取两个字符串的共同部分,即这里的“ def”。我尝试使用sed,但是除非通用部分是这样的前缀,否则我将无法做到这一点:

fprint "%s\n%\n" | sed -e 'N;s:\(.*\).*\n\1.*:\1:'
Run Code Online (Sandbox Code Playgroud)

bash

4
推荐指数
1
解决办法
604
查看次数

python返回匹配和不匹配的字符串模式

我想将一个字符串拆分为与正则表达式模式匹配的部分以及与列表不匹配的部分.

例如

import re
string = 'my_file_10'
pattern = r'\d+$'
#  I know the matching pattern can be obtained with :
m = re.search(pattern, string).group()
print m
'10'
#  The final result should be as following
['my_file_', '10']
Run Code Online (Sandbox Code Playgroud)

python regex string

4
推荐指数
1
解决办法
2600
查看次数

matplotlib自定义标记

我想要标记,如空格,+,或x,或.,或任何内部厚度可调; 事实上,像Origin一样.它似乎需要定制.

代码示例:

import numpy as np
import matplotlib.pyplot as plt

plt.plot(np.arange(10) ** 2,
         'k-',
         marker = 's',
         mfc = 'none',
         lw = 2,
         mew = 2,
         ms = 20)
plt.show()
Run Code Online (Sandbox Code Playgroud)

python matplotlib

3
推荐指数
1
解决办法
4462
查看次数

numpy genfromtxt转换器未知列数

我有几个数据数字文件,其中小数点分隔符是逗号.所以我使用lambda函数进行转换:

import numpy as np
def decimal_converter(num_cols):
    conv = dict((col, lambda valstr: \
    float(valstr.decode('utf-8').replace(',', '.'))) for col in range(nb_cols))
    return conv

data = np.genfromtxt("file.csv", converters = decimal_converter(3))
Run Code Online (Sandbox Code Playgroud)

文件中的数据是这样的:

0; 0,28321815;  0,5819178
1; 0,56868281;  0,85621369
2; 0,24022026;  0,53490058
3; 0,63641921;  0,0293904
4; 0,65585546;  0,55913776
Run Code Online (Sandbox Code Playgroud)

这里有我的函数,decimal_converter我需要指定我的文件包含的列数.通常我不需要指定numpy.genfromtxt文件中的列数,而是需要查找所有列.即使使用转换器选项,我也希望保留此功能.

python file-io numpy converter genfromtxt

3
推荐指数
1
解决办法
2941
查看次数

pyplot.plot()修改行颜色循环

我想绘制一些通过测量得到的数据.我将在每个图上绘制6个测量值,但我希望每个测量数据图具有与其拟合相同的颜色.从一个测量数据图到下一个,我想要matplotlib的defalut颜色循环.

首先,如果加载数据如下:

import matplotlib.pyplot as plt
import matplotlib as mpl
import numpy as np
data1 = np.genfromtxt('data1.txt')
fit1 = np.genfromtxt('fit1.txt')
...
Run Code Online (Sandbox Code Playgroud)

那么问题,我当然可以在rcParams中重新定义颜色序列,如下所示:

ColourSeq = []
ColourSeqOriginal = mpl.rcParams['axes.color_cycle']
for ind in range(len(ColourSeqOriginal)):
    ColourSeq.append(ColourSeqOriginal[ind])
    ColourSeq.append(ColourSeqOriginal[ind])
mpl.rcParams['axes.color_cycle'] = ColourSeq
Run Code Online (Sandbox Code Playgroud)

但这看起来很复杂.

最简单的事情似乎是:

plt.figure()
plt.plot(xdata, data1, xdata, fit1, '???')
plt.plot(xdata, data2, xdata, fit2, '???')
plt.plot(xdata, data3, xdata, fit3, '???')
Run Code Online (Sandbox Code Playgroud)

'???' 作为命令选项,我不知道是否存在一些会阻止plt.plot递增给定数据的颜色值.但是从一个plt.plot()调用到下一个,我需要有正常的颜色增量.

matplotlib

2
推荐指数
1
解决办法
5439
查看次数

matplotlib原始字符串换行代码

matplotlib文本字段的代码中的字符或字符串是什么来打破该行以避免代码行太长?

例如:

plt.text(0.5, 0.5,
    r'$\mathsf{sin\left(\frac{\pi}{180} f_1 \theta + \varphi_1\right) + B sin\left(\frac{\pi}{180} f_2 \theta + \varphi_2\right)}$'
Run Code Online (Sandbox Code Playgroud)

利用"\"突破长线收益率在未格式化的文本打印.

python matplotlib

2
推荐指数
1
解决办法
762
查看次数

标签 统计

python ×4

matplotlib ×3

bash ×1

converter ×1

file-io ×1

genfromtxt ×1

numpy ×1

regex ×1

string ×1