相关疑难解决方法(0)

将列表的字符串表示转换为列表

我想知道最简单的方法是将string如下列表转换为list:

x = u'[ "A","B","C" , " D"]'
Run Code Online (Sandbox Code Playgroud)

即使用户在逗号和引号内的空格之间放置空格也是如此.我需要处理它:

x = ["A", "B", "C", "D"] 
Run Code Online (Sandbox Code Playgroud)

在Python中.

我知道我可以剥夺的空间与strip()split()使用拆分操作和检查非字母.但是代码变得非常糟糕.有一个我不知道的快速功能吗?

python string

465
推荐指数
11
解决办法
28万
查看次数

使用python的eval()与ast.literal_eval()?

我有一些代码的情况,eval()作为一种可能的解决方案.现在我从来没有使用eval()过,但是,我已经发现了很多关于它可能造成的潜在危险的信息.也就是说,我对使用它非常谨慎.

我的情况是我有一个用户给出的输入:

datamap = raw_input('Provide some data here: ')
Run Code Online (Sandbox Code Playgroud)

哪里datamap需要是字典.我四处搜索,发现eval()可以解决这个问题.我认为在尝试使用数据之前我可以检查输入的类型,这将是一个可行的安全预防措施.

datamap = eval(raw_input('Provide some data here: ')
if not isinstance(datamap, dict):
    return
Run Code Online (Sandbox Code Playgroud)

我仔细阅读了文档,但我仍然不清楚这是否安全.eval在输入或datamap调用变量后立即评估数据吗?

ast模块是.literal_eval()唯一安全的选择吗?

python eval abstract-syntax-tree

154
推荐指数
6
解决办法
14万
查看次数

大熊猫认识到的所有dtypes是什么?

对于熊猫,任何人都知道,如果有任何数据类型

(ⅰ) ,float64(int64 和的其它变体np.numberfloat32,int8等)

(ⅱ) bool

(iii)datetime64,timedelta64

如字符串列,总有一个dtypeobject

或者,我想知道,如果除上述列表中的(i),(ii)和(iii)之外还有任何数据类型,那么pandas它不是dtype一个object

python python-3.x pandas

46
推荐指数
2
解决办法
6万
查看次数

pandas - 将字符串转换为字符串列表

我有这个'file.csv'文件用pandas读取:

Title|Tags
T1|"[Tag1,Tag2]"
T1|"[Tag1,Tag2,Tag3]"
T2|"[Tag3,Tag1]"
Run Code Online (Sandbox Code Playgroud)

运用

df = pd.read_csv('file.csv', sep='|')
Run Code Online (Sandbox Code Playgroud)

输出是:

  Title              Tags
0    T1       [Tag1,Tag2]
1    T1  [Tag1,Tag2,Tag3]
2    T2       [Tag3,Tag1]
Run Code Online (Sandbox Code Playgroud)

我知道该列Tags是一个完整的字符串,因为:

In [64]: df['Tags'][0][0]
Out[64]: '['
Run Code Online (Sandbox Code Playgroud)

我需要把它读作一个字符串列表["Tag1","Tag2"].我尝试了这个问题中提供的解决方案,但没有运气,因为我有[]字符实际搞乱事情.

期望的输出应该是:

In [64]: df['Tags'][0][0]
Out[64]: 'Tag1'
Run Code Online (Sandbox Code Playgroud)

python csv string pandas

8
推荐指数
5
解决办法
1万
查看次数

to_CSV 将 np.array 保存为字符串而不是列表

我想将 pandas 数据框保存为 csv 文件,问题是 to_csv 正在将 np.array 转换为字符串。

我想将数组保存为数组,但我在文档中找不到任何有用的内容。

sudoku_solution = [a for a in assignment if a > 0]


label = np.reshape(np.array(sudoku_solution*n_splits), 
                   (n_splits, len(sudoku_solution)))

df = pd.DataFrame(zip(label))

path = './data/SplitsLabel.csv'
try:
    df.to_csv(path_or_buf = path, 
              mode = 'a',
              header = False)
Run Code Online (Sandbox Code Playgroud)

Solution_sudoku = [123, 345, 894, 324, 321, 321](整数列表)

n_splits = 3(整数)

最终结果应该是这样的:

0,[123 345 894 324 321 321]

1、[123 345 894 324 321 321]

3、[123 345 894 324 321 321]

但现在的结果是:

0,“[123 345 894 324 321 321]”

1、“[123 …

python csv pandas

6
推荐指数
1
解决办法
3530
查看次数

使用seaborn从列表列中分组箱线图

我在 python panda DataFrame 中有以下数据。我想要类似于https://stanford.edu/~mwaskom/software/seaborn/examples/grouped_boxplot.html中的分组箱线图

对于每个 id,我希望并排绘制两个箱形图。我该如何实现这一目标。我尝试用 seaborn 包绘制它,但没有成功。

id               predicted                              real
1            [10, 10, 10]                      [16, 18, 20]   
2            [12, 12, 15]              [15, 17, 19, 21, 23]
3           [20, 5, 4, 4]                          [29, 32]
4    [25, 25, 25, 24, 21]  [21, 24, 25, 26, 28, 29, 30, 33]
5        [20, 20, 20, 21]  [21, 22, 24, 26, 28, 30, 31, 32]
6           [8, 3, 3, 14]                          [25, 27]
7  [1, 4, 4, 4, 5, 6, 10]                      [69, 71, …
Run Code Online (Sandbox Code Playgroud)

python boxplot pandas seaborn

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